Telerik Forums
UI for WPF Forum
0 answers
167 views
Hi,
<UserControl>
     <telerik:RadGridView.ColumnGroups>
                            <telerik:GridViewColumnGroup Name="CommonID" Header="{Binding DataContext.ID, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}/>  
     </telerik:RadGridView.ColumnGroups>
  <telerik:RadGridView.Columns>
               <telerik:GridViewDataColumn
Header="{Binding DataContext.ID, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}
DataMemberBinding="{Binding CID}" ColumnGroupName="CommonID"/>

</telerik:RadGridView.Columns>
</UserControl>

ViewModel
=========
public string ID {get; set;}

Model
=====
public string CID {get; set;}

Output
=======
RadGrid :
------------------------------------------
       CommonID // but i need E001 here  [Column Group Header]
-----------------------------
E001       // column header
------------
c101



The binding is not working for ColumnGroup header. I have faced the same issue on Column header, but it is resolved using Datacontext.ID,relativesource....and Data is showing properly

Can anyone help me out to resolve this ?


Sivakumar
Top achievements
Rank 1
 asked on 23 Jun 2013
1 answer
70 views
Here is what I've been given:  The logic is bound to the grid as a conditional formatting.  On the RowLoaded Event the logic will see if the equipment is in use already.  If it is, it marks the entire row red with white forground.  However there are two editable cells that must be marked readonly.  If not this form will fail the QA testing.

So with only the RowLoadedEventArgs being passed, how do I get to the object to bind to the edit event to bind an event handler that cancels any edit???
Michael
Top achievements
Rank 1
 answered on 21 Jun 2013
1 answer
249 views
I've seen in several forum posts (like here: http://www.telerik.com/community/forums/wpf/gridview/binding-to-cell-of-gridview-and-datacontext-says-datarow.aspx) that the Data Context for a cell is the entire object, not just the bound property. Is there a way to change this behavior so the data context is only what the column is bound to? We are binding to complex objects that are all the same type (called ValueWithFormat) and would like to set cell properties based on this type. Here's my example cell template.
<DataTemplate x:Key="ValueWithFormatCellTemplate">
        <Grid Background="{Binding BackgroundBrush}">
            <Border BorderBrush="{Binding BorderBrush}" BorderThickness="1">
                <TextBlock FontWeight="{Binding FontWeight}"
                           Foreground="{Binding ForegroundColor}"
                           Text="{Binding}"
                           ToolTip="{Binding ToolTip}" />
            </Border>
        </Grid>
    </DataTemplate>
Geoffrey
Top achievements
Rank 1
 answered on 21 Jun 2013
4 answers
133 views
I want to use FilteringControl(which appears on radgridview/radtreelistview coloumn filters) independently in my user control. Is it possible to use it independently, if yes can some one guide me with some examples...
Vamshi
Top achievements
Rank 1
 answered on 21 Jun 2013
3 answers
230 views
I just upgraded from the Q1 2013 WPF controls to Q2. I had already converted my app to the new DragDropManager and it was working. After upgrading however my drop handler was never called. My drop target is a RadTreeView, my source is a RadGridView (but I don't think that matters). In addition only certain nodes in my heterogeneous tree are drop targets. I register DragEnter/Leave and Drop handlers in the Loaded event for the data template of the valid tree nodes. Hence when a drag enters the valid node I update the visual cue, when it leaves I update it, and of course when you drop it handles the drop (or it did before Q2).  

After upgrading the drop handler was never called (although the DragEnter and Leave handlers worked fine). I tried all combinations of AllowDrop, IsDragDropEnabled, TreeViewSettings.DragDropExecutionMode = true, and everything else I could find. After MUCH experimentation I found that if I register a DragOver handler on the RadTreeView with exactly one line of code in it (e.Handled = true;) the Drop handler will get called. 

I am just curious if there is an easier way or if I missed something.

Regards
Dave Goughnour
Tina Stancheva
Telerik team
 answered on 21 Jun 2013
3 answers
108 views
Hello,
In my project I'm using a custom collection which derrives from ObservableCollection, ex. CustomGanttCollection : ObservableCollection<CustomGanttTask>
This gives me the possibility to add some extra methods...

The same way as I declared my CustomGanttCollection
, I declared my custom gantt task as: CustomGanttTask : GanttTask

Now I thought using my CustomCollection as the Collection where the ChildTask are stored in by overriding the Children property of GanttTask in my CustomGantTask like:

private <span style="font-size: 14px;">CustomGanttCollection _children</span><br>public <span style="font-size: 14px;">CustomGanttCollection Children<br></span>{<br><span class="Apple-tab-span" style="white-space:pre"> </span>get<br><span class="Apple-tab-span" style="white-space:pre"> </span>{<br><span class="Apple-tab-span" style="white-space:pre">       </span>return _children;<br><span class="Apple-tab-span" style="white-space:pre">   </span>}<br>}


Offcourse I do add some tasks in my ViewModel to the children...

Although this works (no compile errors, when I take a look at the Children property everything looks fine,...)  the GanttView Component won't show me the childtasks.

Is there a way that I can use my custom collection as the children's collection? The GanttView must be able to use the collection as it already uses one for the top-level tasks...
Kenny
Top achievements
Rank 1
 answered on 21 Jun 2013
10 answers
908 views
How do I set the ToolTip of a data cell to the content of the cell or at least to a string based content, if the cell has a string-based content?
This would be useful, if the cell width is to small to display the whole content.

I already have this style:

<Style x:Key="CellStyle1" TargetType="{x:Type tk:GridViewCell}">
                <Setter Property="ToolTip" Value="{Binding RelativeSource={RelativeSource Mode=Self}, Path=Content.Text}" />
            </Style>

(I have labels as content in all my cells).

This works in principle, but I always get lots of data errors in the debug window output, because there seem to be some automatically generated cells who don't have my Label in it.

"
System.Windows.Data Error: 40 : BindingExpression path error: 'Text' property not found on 'object' ''String' (HashCode=757206908)'. BindingExpression:Path=Content.Text; DataItem='GridViewCell' (Name=''); target element is 'GridViewCell' (Name=''); target property is 'ToolTip' (type 'Object')
"

Any way to get rid of these errors?

Is there a better way to set the ToolTip of data cells to the content of cells?

Thanks
ClausDC
Top achievements
Rank 1
Iron
Iron
 answered on 21 Jun 2013
1 answer
80 views
Hi!

I can set different color for each label with CreateItemStyleDelegate, could I do the same for the color of point marks of a line series?

I would specify the color of each point mark with databinding as I bind the point to it's value.
Evgenia
Telerik team
 answered on 21 Jun 2013
1 answer
180 views
HI, 
I use in my application a gridview with four buttons to delete and add a row and to save or cancel the edit. The delete and add buttons work perfectly but not the save insert/edit button. I don't understand where is the problem in my code, if someone could help.
This is my xaml : 
<Grid Name="indicatorPage" Visibility="Hidden" Margin="0,194,0,-194">
               <Grid.RowDefinitions>
                   <RowDefinition Height="Auto" />
                   <RowDefinition />
               </Grid.RowDefinitions>
           <StackPanel Orientation="Horizontal"
                   HorizontalAlignment="Center"
                   Margin="0,5,0,0">
               <telerik:RadButton Width="150"
                              Content="Delete selected rows"
                              Margin="0,0,5,0"
                              Command="telerikGrid:RadGridViewCommands.Delete"
                              CommandTarget="{Binding ElementName=gvIndicatorConf}" />
               <telerik:RadButton Width="150"
                              Content="Add new row"
                              Margin="0,0,5,0"
                              Command="telerikGrid:RadGridViewCommands.BeginInsert"
                              CommandTarget="{Binding ElementName=gvIndicatorConf}" />
               <telerik:RadButton Width="150"
                              Content="Save insert/edit"
                              Margin="0,0,5,0"
                              Command="telerikGrid:RadGridViewCommands.CommitEdit"
                              CommandTarget="{Binding ElementName=gvIndicatorConf}" />
               <telerik:RadButton Width="150"
                              Content="Cancel insert/edit"
                              Command="telerikGrid:RadGridViewCommands.CancelRowEdit"
                              CommandTarget="{Binding ElementName=gvIndicatorConf}" />
           </StackPanel>
           <telerik:RadGridView x:Name="gvIndicatorConf" 
                                ItemsSource="{Binding IndicatorConf}"
                                AddingNewDataItem="radGridView_AddingNewDataItem"
                                Margin="0,5,0,0" Grid.Row="1" 
                                AutoGenerateColumns="False" telerik:StyleManager.Theme="Windows8"
                                MaxHeight="7000" MaxWidth="1000">
               <telerik:RadGridView.Columns>
                   <telerik:GridViewColumn Width="90">
                       <telerik:GridViewColumn.CellTemplate>
                           <DataTemplate>
                               <telerik:RadButton Content="Delete"
                                              Command="telerikGrid:RadGridViewCommands.Delete"
                                              CommandParameter="{Binding}" />
                           </DataTemplate>
                       </telerik:GridViewColumn.CellTemplate>
                   </telerik:GridViewColumn>
                   <telerik:GridViewDataColumn DataMemberBinding="{Binding Code}" Header="Code" UniqueName="Code" />
                   <telerik:GridViewDataColumn DataMemberBinding="{Binding Descritpion}" Header="Descritpion" UniqueName="Descritpion" />
                   <telerik:GridViewDataColumn DataMemberBinding="{Binding Connecter}" Header="Connecter" UniqueName="Connecter" IsReadOnly="True"/>
                   <telerik:GridViewDataColumn DataMemberBinding="{Binding Period}" Header="Period" UniqueName="Period" />
               </telerik:RadGridView.Columns>
           </telerik:RadGridView>
       </Grid>

Thanks !
Yoan
Telerik team
 answered on 21 Jun 2013
1 answer
118 views
I have a problem where after applying the Filter, it opens up all the nodes. 

I am using FilterDescriptor.

We have a Huge Tree and we don't want the Tree and its children  to open after applying the Filter. Any idea how to stop it from opening after applying the Filter?

I am not able to attach the project, but will attach the screen shot. 

Here is code snippet. 

private void RadContextMenu_ItemClick(object sender, Telerik.Windows.RadRoutedEventArgs e)
        {
            if ((e.OriginalSource as RadMenuItem).Header.Equals("Show Spain"))
            {
                FilterDescriptor descriptor = new FilterDescriptor();
                descriptor.Member = "Country";
                descriptor.Operator = FilterOperator.IsEqualTo;
                descriptor.Value = "Spain";
                this.RadTreeListView1.FilterDescriptors.Add(descriptor);
            }
 
            CompositeFilterDescriptor mainFilter = new CompositeFilterDescriptor();
 
            if ((e.OriginalSource as RadMenuItem).Header.Equals("Show England"))
            {
                FilterDescriptor descriptor = new FilterDescriptor();
                descriptor.Member = "Country";
                descriptor.Operator = FilterOperator.IsEqualTo;
                descriptor.Value = "England";
                mainFilter.FilterDescriptors.Add(descriptor);
                this.RadTreeListView1.FilterDescriptors.Add(mainFilter);
            }
            if ((e.OriginalSource as RadMenuItem).Header.Equals("Show England - France"))
            {
                mainFilter = new CompositeFilterDescriptor();
                mainFilter.LogicalOperator = FilterCompositionLogicalOperator.Or;
                FilterDescriptor descriptor = new FilterDescriptor();
                descriptor.Member = "Country";
                descriptor.Operator = FilterOperator.IsEqualTo;
                descriptor.Value = "England";
 
                mainFilter.FilterDescriptors.Add(descriptor);
                descriptor = new FilterDescriptor();
                descriptor.Member = "Country";
                descriptor.Operator = FilterOperator.IsEqualTo;
                descriptor.Value = "France";
 
                mainFilter.FilterDescriptors.Add(descriptor);
 
                this.RadTreeListView1.FilterDescriptors.Add(mainFilter);
            }
 
            if ((e.OriginalSource as RadMenuItem).Header.Equals("Clear Filter"))
            {
                this.RadTreeListView1.FilterDescriptors.RemoveAt(0);
            }
             
        }

Yoan
Telerik team
 answered on 21 Jun 2013
Narrow your results
Selected tags
Tags
+? more
Top users last month
Anislav
Top achievements
Rank 6
Silver
Bronze
Bronze
Jianxian
Top achievements
Rank 1
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Jim
Top achievements
Rank 2
Iron
Iron
Nurik
Top achievements
Rank 2
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Anislav
Top achievements
Rank 6
Silver
Bronze
Bronze
Jianxian
Top achievements
Rank 1
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Jim
Top achievements
Rank 2
Iron
Iron
Nurik
Top achievements
Rank 2
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?