Telerik Forums
UI for WPF Forum
2 answers
155 views
Creating a DragQuery method for setting the drag cue only seems to work when dragging the contents. When dragging the header the drag image is alway the TileViewItem itself. This method is called but has no effect.

       private void TileViewDragQuery(object sender, DragDropQueryEventArgs e)
        {
            try
            {
                if (e.Options.Status == DragStatus.DragQuery)
                {
                    e.QueryResult = true;
                    e.Handled = true;


                    e.Options.Payload = sender as FrameworkElement;
                    e.Options.ArrowCue = RadDragAndDropManager.GenerateArrowCue();


                    // Create Drag Cue
                    // Create a ContentControl. It will be used as a DragCue.
                    ContentControl dragCue = new ContentControl();
                    // Use a DataTemplate to "say" how the dragged item will be displayed.
                    dragCue.ContentTemplate = mainGrid.Resources["DragCueTemplate"] as DataTemplate;
                    e.Options.DragCue = dragCue;
                }
                else if (e.Options.Status == DragStatus.DropSourceQuery)
                {
                    e.QueryResult = true;
                    e.Handled = true;
                }
            }
            catch (Exception)
            {
                throw;
            }
        }


Stephen
Top achievements
Rank 1
 answered on 17 Aug 2011
3 answers
239 views
Hi all

I'm currently evaluating the grid for one of our main applications, and hit a few early bumps. Generally, I'm struggling a bit with the avaliability of the DataContext in cells, columns etc.

The Microsoft grid, while being a very nice control IMO is a bit of a letdown here. What I would be expecting from a grid is this:

<telerik:GridViewDataColumn 
  DataMemberBinding="{Binding DisplayName}"
  IsVisible="{Binding IsVisible}"
  Header="{Binding HeaderText}"
  My.AttachedProperty="{Binding Foo}"
 />


This feels just natural and enables proper MVVM without any dirty hacks. Much to my delight, I could easily bind the IsVisible property of the column to a boolean property of my view model. When I tried the same thing with the header: fail. I then created a simple template and did the binding and discovered that the data context of my header is not just empty, but actually an instance of system.object. I have no idea what the reason behind this is. I sure didn't set this.

There's a few threads on the issue, in part with workarounds that make me *really* cringe:
http://www.telerik.com/community/forums/wpf/gridview/column-header-binding.aspx

I can't help but wonder why we have a distinction of cases, and why I end up with a random data context for the header  instead of the grid's data context. After all, it just works for other dependency properties and attached properties.

I'm near certain that this will become a problem for us somewhere down the road - because one of our devs wants to set a header dynamically, we do need localization, have custom templating for headers, or another reason I currently don't think about.

What's Telerik's point on this? Is this a know issue that might get fixed? Is it a deliberate choice made for a good reason I don't see? Is it a bug?

Thanks in advance,
Philipp

Ivan Ivanov
Telerik team
 answered on 17 Aug 2011
6 answers
123 views
Hi, 
The following is my Xaml code:
<Window x:Class="RadControlsWpfApp1.MainWindow"
                xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
                Title="MainWindow" Height="700" Width="900" Background="Black">
 
    <Grid>
        <Grid.Resources>
            <DataTemplate x:Key="customItemTemplate">
                <StackPanel>
                    <Image Source="{Binding Path=Country}" Height="150" HorizontalAlignment="Left" Margin="10,10,0,0" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="200" />
                    <Button Content="Show Details" Height="23" Name="btnDetail" Width="75" Foreground="White" Click="btnDetail_Click" />
                    <Label x:Name="ID" Content="{Binding Path=ID}"></Label>
                </StackPanel>
            </DataTemplate>
        </Grid.Resources>
        <telerik:RadCarousel x:Name="sampleRadCarousel" ItemTemplate="{StaticResource customItemTemplate}" Background="Transparent" GotFocus="sampleRadCarousel_GotFocus" />                            
    </Grid>
     
</Window>

I wanna show content of Lable (ID) when the user clicks to Button (btnDetail).
How can I do that?
Thanks for your helping.
Hamid
Top achievements
Rank 1
 answered on 17 Aug 2011
11 answers
2.3K+ views
I have a WPF radgridview with the first column being GridViewCheckBoxColumn. I have templated the header

        <telerik:RadGridView x:Name="WiresGV" AutoGenerateColumns="False" Grid.Row="1" ItemsSource="{Binding Wires}" ShowGroupPanel="False" ShowInsertRow="True" AlternateRowBackground="OliveDrab" clr:XWireAppCommands.DataGridDoubleClickCommand="{Binding TarunCommand}">
            <telerik:RadGridView.Columns>
                <telerik:GridViewCheckBoxColumn DataMemberBinding="{Binding IsSelected}" Name="CBCol" AutoSelectOnEdit="True" IsFilterable="False" Width="60">
                    <telerik:GridViewCheckBoxColumn.Header>
                                <CheckBox Content="Select" Name="HeaderItem" Click="Button6_Click" Foreground="White"></CheckBox>
                    </telerik:GridViewCheckBoxColumn.Header>
                </telerik:GridViewCheckBoxColumn>
                <telerik:GridViewDataColumn DataMemberBinding="{Binding WireDate}" Header="Date" DataFormatString=" {0:dd, MMM, yyyy}" />
 
 
.....
When the user click on the checkbox in the header i want to udpate all checkboxes in the rows to checked or unchecked. I am trying to do that with this code by "cb is always nothing". Pls advise
For Each row As GridViewRow In Me.WiresGV.ChildrenOfType(Of GridView.GridViewRow)()
 
    If (TypeOf row Is GridViewNewRow) Then
        Continue For
    End If
 
    Dim cb As CheckBox
    cb = row.Cells(0).ChildrenOfType(Of CheckBox)().FirstOrDefault
      cb.IsChecked = True
 
 
Next

Pavel Pavlov
Telerik team
 answered on 17 Aug 2011
1 answer
162 views
I noticed in your watermark example, any change isn't saved on the undo stack.

Is there a way on a custom tool you can programmically add to the undo stack?

Thanks

-Matt
Iva Toteva
Telerik team
 answered on 17 Aug 2011
4 answers
127 views
I am new to the WPF RadGridView and have a simple question.   I need to implement a search which looks at all columns of all rows in a bound, virtualized,  WPF RadDataGrid.   After discovering that the "ChildrenOfType<GridViewRow>()" function only returns a list of visible rows,  I searched this forum for an appropriate technique.  

I say one technique involving the RadGridView's "Records" property.   The current RadGridView does not have a "Records" property.

I also saw a couple of hits recommending searching the underlying bound data source instead of searching the actual grid rows.   That's easy enough.

But once I find the desired row in the underlying bound data (in this case an ObservableCollection<T>), how do I determine the matching grid row - and move it into the visible set on the user's screen - in a way that still works if the grid is sorted in a different order from the underlying bound data source?  

Thanks!
-Bob
BRiddle
Top achievements
Rank 1
 answered on 17 Aug 2011
6 answers
188 views
I have a radgridview displaying in the rowdetail of another radgridview. a list of sublists. this works nicely. now i want to make sure that the columns of the sublists are all synchronised. to do this, i was thinking of registering the loaded inner lists and using the changing/changed events of the columns. I am currently still having difficulties, finding the right information within the events (changed column number, current width), but I am more concerned about other issues. how are these rowdetails handled, are they unloaded when closed? I guess i should then unregister the detail. what happens when scrolled out of visible area? as the radgridcontrol can handle a large amount of data, i can imagine i must take a few things into account i have not yet thought about.

<radgridview>
<RadGridView.RowDetailsTemplate>
<DataTemplate>
<radgridview ColumnWidthChanging="gridView_ColumnWidthChanging"
ColumnWidthChanged="gridView_ColumnWidthChanged"
Loaded="gridView_Loaded"/>
</DataTemplate>
</RadGridView.RowDetailsTemplate>
</radgridview>

I am fairly new to wpf and very new to the radcontrols, so be kind ;) ...
Vanya Pavlova
Telerik team
 answered on 17 Aug 2011
1 answer
116 views
Is there a way to fire the cellvalidating event when the cell is changed, instead of when it is commited? I want to validate after each character that the user enters into a cell. I thought setting to property changed instead of focus lossed would do it, but then the property is not really changed until it is commited is it..

Thanks!
Maya
Telerik team
 answered on 17 Aug 2011
3 answers
112 views
I would just like to know how many levels I can drill down to in a chart. I read something about a bug that only lets you define and use 2 or 3 objects of type ChartHierarchicalViewDescriptor, but that seems like it would only apply if you had a different data structure at each level of the drill down.

I'm binding a chart to data built from an self-join in a database, so each level is the same as the previous. Will I be able to create one ChartHierarchicalViewDescriptor that works for as many levels as I have?

Thanks!

Eric
Giuseppe
Telerik team
 answered on 17 Aug 2011
1 answer
98 views
Hi guys i'd like to know on how to add empty cells at the bottom of the grid where the the user can add. It could be textbox or combo box. THanks!


Ayana
Maya
Telerik team
 answered on 17 Aug 2011
Narrow your results
Selected tags
Tags
GridView
General Discussions
Chart
RichTextBox
Docking
ScheduleView
ChartView
TreeView
Diagram
Map
ComboBox
TreeListView
Window
RibbonView and RibbonWindow
PropertyGrid
DragAndDrop
TabControl
TileView
Carousel
DataForm
PDFViewer
MaskedInput (Numeric, DateTime, Text, Currency)
AutoCompleteBox
DatePicker
Buttons
ListBox
GanttView
PivotGrid
Spreadsheet
Gauges
NumericUpDown
PanelBar
DateTimePicker
DataFilter
Menu
ContextMenu
TimeLine
Calendar
Installer and Visual Studio Extensions
ImageEditor
BusyIndicator
Expander
Slider
TileList
DataPager
PersistenceFramework
Styling
TimeBar
OutlookBar
TransitionControl
FileDialogs
Book
ToolBar
ColorPicker
TimePicker
MultiColumnComboBox
SyntaxEditor
VirtualGrid
Wizard
ExpressionEditor
NavigationView (Hamburger Menu)
WatermarkTextBox
DesktopAlert
BarCode
SpellChecker
DataServiceDataSource
EntityFrameworkDataSource
RadialMenu
ChartView3D
Data Virtualization
BreadCrumb
LayoutControl
ProgressBar
Sparkline
TabbedWindow
ToolTip
CloudUpload
ColorEditor
TreeMap and PivotMap
EntityFrameworkCoreDataSource (.Net Core)
HeatMap
Chat (Conversational UI)
VirtualizingWrapPanel
Calculator
NotifyIcon
TaskBoard
TimeSpanPicker
BulletGraph
Licensing
WebCam
CardView
DataBar
FilePathPicker
PasswordBox
SplashScreen
Callout
Rating
Accessibility
CollectionNavigator
Localization
AutoSuggestBox
Security
VirtualKeyboard
HighlightTextBlock
TouchManager
StepProgressBar
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Chester
Top achievements
Rank 1
Iron
Simon
Top achievements
Rank 1
Iron
Douglas
Top achievements
Rank 2
Iron
Iron
SUNIL
Top achievements
Rank 3
Iron
Iron
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Chester
Top achievements
Rank 1
Iron
Simon
Top achievements
Rank 1
Iron
Douglas
Top achievements
Rank 2
Iron
Iron
SUNIL
Top achievements
Rank 3
Iron
Iron
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?