<ControlTemplate TargetType="{x:Type telerik:GridViewHeaderRow}"> <telerik:SelectiveScrollingGrid> <telerik:SelectiveScrollingGrid.ColumnDefinitions> <ColumnDefinition Width="11"/> <ColumnDefinition Width="14"/> <ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/> <ColumnDefinition Width="*"/> </telerik:SelectiveScrollingGrid.ColumnDefinitions> <telerik:SelectiveScrollingGrid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition/> </telerik:SelectiveScrollingGrid.RowDefinitions> <telerik:CommonHeaderPresenter x:Name="PART_CommonHeaderPresenter" Grid.Column="4" IsTabStop="False" Grid.Row="1" d:LayoutOverrides="GridBox"> </telerik:CommonHeaderPresenter> <Border x:Name="CommonHeaderIndent" BorderBrush="#00848484" BorderThickness="0" Background="{StaticResource Common_Background}" Grid.ColumnSpan="2" telerik:SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical" Visibility="{Binding Visibility, ElementName=PART_CommonHeaderPresenter}" Grid.Row="1" d:LayoutOverrides="GridBox"/> <Grid x:Name="PART_OuterGrid" Grid.ColumnSpan="5" Grid.Row="1"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <Border x:Name="PART_GridViewHeaderRowBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="0" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Padding="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"> <Border BorderBrush="#004B4B4B" BorderThickness="0" Background="{StaticResource Common_Background}"/> </Border> </Grid> <telerik:DataCellsPresenter x:Name="PART_DataCellsPresenter" Grid.Column="4" IsTabStop="False" Grid.Row="1"> </telerik:DataCellsPresenter> <Border x:Name="PART_IndicatorPresenter" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="0" Grid.Row="1" telerik:SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical" Visibility="{TemplateBinding RowIndicatorVisibility}" Width="25" Grid.ColumnSpan="2"> <Border BorderBrush="#004B4B4B" BorderThickness="0" Background="{StaticResource Common_Background}"> </Border> </Border> <telerik:IndentPresenter x:Name="PART_IndentPresenter" Grid.Column="4" IsTabStop="False" IndentLevel="{TemplateBinding IndentLevel}" MinHeight="{TemplateBinding MinHeight}" Grid.Row="1" telerik:SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical" d:LayoutOverrides="GridBox"> <telerik:IndentPresenter.ItemTemplate> <DataTemplate> <telerik:GridViewHeaderIndentCell IsTabStop="False"> </telerik:GridViewHeaderIndentCell> </DataTemplate> </telerik:IndentPresenter.ItemTemplate> </telerik:IndentPresenter> <Border x:Name="PART_CommonHeaderHierarchyIndentPresenterAllLevels" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="0" Background="{StaticResource Common_Background}" Grid.Column="4" Grid.Row="1" Grid.RowSpan="1" telerik:SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical" Width="25" Margin="0,0,233.907,0"> <Border.Visibility> <Binding Path="HasHierarchy" RelativeSource="{RelativeSource TemplatedParent}"> <Binding.Converter> <telerik:BooleanToVisibilityConverter/> </Binding.Converter> </Binding> </Border.Visibility> </Border> <Border x:Name="PART_CommonHeaderHierarchyIndentPresenterFirstLevel" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="0" Background="{StaticResource Common_Background}" Grid.Column="4" Margin="0,-1,233.907,0" Grid.Row="0" Grid.RowSpan="1" telerik:SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical" Width="25" d:LayoutOverrides="GridBox"> <Border.Visibility> <Binding Path="HasHierarchy" RelativeSource="{RelativeSource TemplatedParent}"> <Binding.Converter> <telerik:BooleanToVisibilityConverter/> </Binding.Converter> </Binding> </Border.Visibility> </Border> <Border x:Name="PART_HierarchyIndentPresenter" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="0" Grid.Column="4" Grid.Row="1" telerik:SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical" Width="25" Margin="0,0,233.907,0" d:LayoutOverrides="GridBox"> <Border.Visibility> <Binding Path="HasHierarchy" RelativeSource="{RelativeSource TemplatedParent}"> <Binding.Converter> <telerik:BooleanToVisibilityConverter/> </Binding.Converter> </Binding> </Border.Visibility> <Border BorderBrush="#004B4B4B" BorderThickness="0" Background="{StaticResource Common_Background}" /> </Border> </telerik:SelectiveScrollingGrid> </ControlTemplate>
Hi,
I have a WPF project with a RadTreeView with loadondemand enabled and i want to be able to add/edit/delete item by a RadControlMenu in a mvvm context.
The project sample can be found here https://docs.google.com/file/d/0B6ihaOKSuZdBaHpxUVpPZzgzQ00/edit?usp=sharing. (.NET 4.5 with Telererik Controls Q2 2013). The sample load the folder on C drive for loadondemand but NOTHING is implemented when add/rename action are called (only UI).
1- I have a different behavior between empty/not empty folder. When i set the Expanded property to true in my viewmodel the loadondemand is well fired but when just after i add the new folder in my observablecollection, for empty folder the new folder is not shown (it's like the node is not expanded) and for folder with childs the new folder is well shown.
// Expanded = true fire the loadondemand if needed and open the treenode
if (!this.Expanded) this.Expanded = true;
// Insert the new newfolder
// If the folder is empty when added the new folder the node is not show
// If the folder is not empty, the folder is expanded and the node is show
FolderWrapper newFolder = new FolderWrapper(new Folder() { Name = "New folder" });
this._subFolders.Add(newFolder);
2- Like i want a couple less between my viewmodel and view, i use a event to fire the new folder into my view. I use the ExpandToPendingSelection sample (wpf treeview documentation) to select and bring the item into the view. But I don't found the way to set the item in editmode (even if i use a edittemplate). The item is not selected and the focus is always on treeview.
ExpandToPendingSelection(path.ToString().Split('.'));
Dispatcher.BeginInvoke(
(Action)delegate
{
var treeViewItem = treeView.SelectedContainer;
treeViewItem.IsInEditMode = true;
// Now we can focus, select, edit the item:
treeViewItem.Focus();
});
3- When I add a new folder in a not expanded folder near the windows bottom and if the childs node fill the window the item is not bring into view.
Thanks,
Luc
<
telerik:RadWindow
x:Class
=
"Vue.MainWindow"
x:Name
=
"mainWindow"
xmlns
=
"http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:telerik
=
"http://schemas.telerik.com/2008/xaml/presentation"
>
<
Grid
x:Name
=
"mainGrid"
>
<
telerik:RadTreeView
x:Name
=
"radTreeView"
Grid.Row
=
"1"
ItemsSource
=
"{Binding TypeDatabases}"
<telerik:RadTreeView.Resources>
<
HierarchicalDataTemplate
DataType
=
"{x:Type Modele:EntiteDatabase}"
ItemsSource
=
"{Binding Tables}"
>
<
StackPanel
Orientation
=
"Horizontal"
Height
=
"25"
>
<
Image
Source
=
"{Binding SourceIcone}"
Stretch
=
"Fill"
Height
=
"16"
/>
<
TextBlock
Text
=
"{Binding Description}"
TextAlignment
=
"Left"
VerticalAlignment
=
"Center"
/>
<
telerik:RadContextMenu.ContextMenu
>
<
telerik:RadContextMenu
InheritDataContext
=
"False"
DataContext
=
"{Binding DataContext, ElementName=mainWindow}"
>
<
telerik:RadMenuItem
Header
=
"Connexion"
Command
=
"{Binding OpenDatabase}"
/>
<
telerik:RadMenuItem
Header
=
"Déconnexion"
Command
=
"{Binding CloseDatabase}"
/>
</
telerik:RadContextMenu
>
</
telerik:RadContextMenu.ContextMenu
>
</
StackPanel
>
</
HierarchicalDataTemplate
>
</
telerik:RadTreeView.Resources
>
</
telerik:RadTreeView
>
</
Grid
>
</
telerik:RadWindow
>
<
telerik:RadChart
Name
=
"radChartCAMois"
>
<
telerik:RadChart.SeriesMappings
>
<
telerik:SeriesMapping
LegendLabel
=
"Chiffre d'affaire en DT"
>
<
telerik:SeriesMapping.SeriesDefinition
>
<
telerik:Area3DSeriesDefinition
/>
</
telerik:SeriesMapping.SeriesDefinition
>
<
telerik:SeriesMapping.ItemMappings
>
<
telerik:ItemMapping
DataPointMember
=
"XValue"
FieldName
=
"IntValue"
></
telerik:ItemMapping
>
<
telerik:ItemMapping
DataPointMember
=
"YValue"
FieldName
=
"StringValue"
></
telerik:ItemMapping
>
</
telerik:SeriesMapping.ItemMappings
>
</
telerik:SeriesMapping
>
</
telerik:RadChart.SeriesMappings
>
</
telerik:RadChart
>
List<MyClass> a =
new
List<MyClass>{
new
MyClass{intValue = 1,stringValue =
"s1"
},
new
MyClass{intValue = 2,stringValue =
"s2"
}};
radChartCAMois.ItemsSource = a;
class
MyClass
{
public
int
intValue;
public
string
stringValue;
}