I'm not sure whether this is a bug or something I haven't done correctly. I have the following very simple codes in an XBap:
<Telerik:RadTreeView IsVirtualizing="True">
<Telerik:RadTreeViewItem Header="Parent Node">
<Telerik:RadTreeViewItem Header="Child Node">
<Telerik:RadTreeViewItem Header="Grandchild Node">
<Telerik:RadTreeViewItem Header="No idea"></Telerik:RadTreeViewItem>
</Telerik:RadTreeViewItem>
</Telerik:RadTreeViewItem>
</Telerik:RadTreeViewItem>
</Telerik:RadTreeView>
Please do notice that I set IsVirtualizing to True. If I run it then expand, then collapse a TreeViewItem a few times, the child TreeViewItem header disappear.
My test application is an XBap with Visual Studio 2010 and .Net 4.
Edited: I know the title of the post sounds really weird. I tried to change but there seems to be no way to do that.
Much appreciate for all your help.
<Telerik:RadTreeView IsVirtualizing="True">
<Telerik:RadTreeViewItem Header="Parent Node">
<Telerik:RadTreeViewItem Header="Child Node">
<Telerik:RadTreeViewItem Header="Grandchild Node">
<Telerik:RadTreeViewItem Header="No idea"></Telerik:RadTreeViewItem>
</Telerik:RadTreeViewItem>
</Telerik:RadTreeViewItem>
</Telerik:RadTreeViewItem>
</Telerik:RadTreeView>
Please do notice that I set IsVirtualizing to True. If I run it then expand, then collapse a TreeViewItem a few times, the child TreeViewItem header disappear.
My test application is an XBap with Visual Studio 2010 and .Net 4.
Edited: I know the title of the post sounds really weird. I tried to change but there seems to be no way to do that.
Much appreciate for all your help.
6 Answers, 1 is accepted
0
Accepted
Hi Michael,
This is a known issue and it is logged in our PITS where you can track its progress.
Please accept our apology for the caused inconvenience.
Regards,
Tina Stancheva
the Telerik team
This is a known issue and it is logged in our PITS where you can track its progress.
Please accept our apology for the caused inconvenience.
Regards,
Tina Stancheva
the Telerik team
0
Michael
Top achievements
Rank 1
answered on 18 Mar 2011, 01:52 AM
Many thanks for your reply. I will use ListBox instead of the TreeView then cause the .Net TreeView also has bugs when turn on virtualization.
Apart from this bug, Telerik controls are great really. We r considering buying them for our project. Cheers
Apart from this bug, Telerik controls are great really. We r considering buying them for our project. Cheers
0
Brandon
Top achievements
Rank 1
answered on 30 Jul 2014, 10:05 PM
Exact bug is happening to me now - any ideas how to fix it?
0
Hello Brandon,
Please note that the UIVirtualization of the RadTreeView control is designed to work in data binding scenarios. If you declare the control with its items in XAML you actually create UIContainers hence the UIVirtualization does not take place.
In other words the RadTreeView control does not support virtualization when using XAML items.
Regards,
Pavel R. Pavlov
Telerik
Please note that the UIVirtualization of the RadTreeView control is designed to work in data binding scenarios. If you declare the control with its items in XAML you actually create UIContainers hence the UIVirtualization does not take place.
In other words the RadTreeView control does not support virtualization when using XAML items.
Regards,
Pavel R. Pavlov
Telerik
Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.
0
Brandon
Top achievements
Rank 1
answered on 31 Jul 2014, 05:30 PM
This happens using data source. Unfortunately I can't attach a project for you. So here is my xaml:
And here is MainWindow.xaml.cs
<
Window
xmlns:telerik
=
"http://schemas.telerik.com/2008/xaml/presentation"
x:Class
=
"WpfApplication3.MainWindow"
Title
=
"MainWindow"
Height
=
"350"
Width
=
"525"
>
<
Grid
>
<
telerik:RadTreeView
x:Name
=
"m_tree"
HorizontalAlignment
=
"Stretch"
VerticalAlignment
=
"Stretch"
IsVirtualizing
=
"True"
LoadOnDemand
=
"m_tree_LoadOnDemand"
>
</
telerik:RadTreeView
>
</
Grid
>
</
Window
>
And here is MainWindow.xaml.cs
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
string[] items = new string[]
{
"Hello",
"There",
};
m_tree.ItemsSource = items.Select(s => new Telerik.Windows.Controls.RadTreeViewItem() { Header = s, IsLoadOnDemandEnabled = true });
}
private void m_tree_LoadOnDemand(object sender, Telerik.Windows.RadRoutedEventArgs e)
{
(e.OriginalSource as Telerik.Windows.Controls.RadTreeViewItem).Items.Add(new Telerik.Windows.Controls.RadTreeViewItem() { Header = "one" });
(e.OriginalSource as Telerik.Windows.Controls.RadTreeViewItem).Items.Add(new Telerik.Windows.Controls.RadTreeViewItem() { Header = "two" });
(e.OriginalSource as Telerik.Windows.Controls.RadTreeViewItem).IsLoadingOnDemand = false;
}
0
Hello Brandon,
I can see in the provided snippets that you actually create UI containers (e.g. RadTreeViewItem). This is the reason why the virtualization cannot take place in your particular scenario. You should create business items and let the control decide when the UI containers should be created.
You can find a sample demonstration how the LoadOnDemand feature can be used with virtualization in our documentation. Please give this approach a try and let us know if you need any further assistance.
Regards,
Pavel R. Pavlov
Telerik
I can see in the provided snippets that you actually create UI containers (e.g. RadTreeViewItem). This is the reason why the virtualization cannot take place in your particular scenario. You should create business items and let the control decide when the UI containers should be created.
You can find a sample demonstration how the LoadOnDemand feature can be used with virtualization in our documentation. Please give this approach a try and let us know if you need any further assistance.
Regards,
Pavel R. Pavlov
Telerik
Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos and start improving your app based on facts, not hunches.