In Development
Last Updated: 16 Jan 2020 12:46 by ADMIN
Virtualized TreeView is bound to collection of models and IsSelected of RadTreeViewItem is 2way bound to IsSelected of model.
Select the 10th item with mouse. 
Reset the items of the tree to a subset (1-15) containing the selected item.
Select the 5th item with mouse and shift key down.
Expected: Range 5-10 of items is selected.
Actual: Range 10-15 of items is selected.

Approved
Last Updated: 08 Jan 2020 09:52 by ADMIN
Selection is not updated when using the arrow keys if the current selected item is outside the viewport.
Approved
Last Updated: 11 Dec 2019 09:27 by ADMIN
When switching to a different window, the selected item in the RadTreeView stays in a selected in-focus state. The expected behavior is not to be focused any more (turn gray).
Approved
Last Updated: 25 Nov 2019 16:49 by ADMIN
Selecting an item via tap does not work when ScrollViewer.PanningMode has a value other than None.
Declined
Last Updated: 17 Jan 2020 09:16 by ADMIN

When a large number of items are selected through extended selection (with a lot of items on the first level of the RadTreeView) the selection does not work correctly. 

Workaround - make the selection in viewmodels manually and provide 2way bindings in style
 <telerik:RadTreeView.ItemContainerStyle>
                <Style TargetType="telerik:RadTreeViewItem">
                    <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
                    <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
                </Style>
            </telerik:RadTreeView.ItemContainerStyle>
private void SomeRadTreeView_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            int count = e.AddedItems.Count;
            if (count > 1)
            {
                SomeViewModel first = e.AddedItems[0] as SomeViewModel;
                SomeViewModel last = e.AddedItems[count - 1] as SomeViewModel;
                
                this.SomeRadTreeView.SelectionChanged -= this.SomeRadTreeView_SelectionChanged;
                this.SomeRadTreeView.AutoScrollToSelectedItem = false;
                this.ViewModel.SelectRange(first, last);
                this.SomeRadTreeView.AutoScrollToSelectedItem = true;
                this.SomeRadTreeView.SelectionChanged += this.SomeRadTreeView_SelectionChanged;
            }
        }

Approved
Last Updated: 17 Jul 2019 11:31 by ADMIN

Select an item with mouse, scroll thousands of items down and then shift select item to perform range selection. This will block the UI thread for seconds. 

Approved
Last Updated: 30 Jul 2018 08:13 by ADMIN
When you reorder the collection very fast an exception is thrown. This is reproducible when the UI virtualization is enabled with its virtualization mode set to Recycling, and an item is selected. Also, you can observe some missing items glitches instead of the exception. To reproduce this you can call the ObservableCollection's Move() method several times in a single method (see the attached project). 

In this case also a NullReferenceException is thrown sometimes instead of the InvalidOperationException.

To work this around delay the reordering calls so that the treeview has time to properly measure and arrange itself. For example:

Items.Move(10, 2);
Application.Current.Dispatcher.BeginInvoke(new Action(() =>
{
Items.Move(10, 2);
}), System.Windows.Threading.DispatcherPriority.Background);
Approved
Last Updated: 05 Apr 2018 10:34 by ADMIN
The built-in drag drop mechanism works with the containers of the items and makes a snapshot of them for the DragVisual. Thus, dragging multiple selected items that are not present in the viewport is not possible.
Declined
Last Updated: 19 Jan 2018 05:47 by wu
with RadTreeView control,using MVVM binding,the xaml like :
AutoScrollToSelectedItem="True"  IsVirtualizing="False"
looking the attach files,Navigate by the  RadBreadcrumb(the RadBreadcrumb and the RadTreeView binding the same data source,and binding the same SelectedIem),
when expand the level4,the RadTreeView  can't bring the selected item to view,but scroll mouse to the seleced item view,then Navigate again the same postion ,it can scroll,the radtreeview can reach the selected item.
     I test the microsoft treeview,if the Virtualizing is true,it can't scroll the selected item,but set the Virtualizing  to false,it is good.
    the other question,how to set the style?the  selected item's highligh area can expand the full row,like the visual studio.
Approved
Last Updated: 04 Dec 2017 15:47 by Vladimir
When expanding all items with a horizontal scrollbar the last item is hidden by the scrollbar. As a workaround, you can set the IsVirtualizing property of the RadTreeView to True.
Won't Fix
Last Updated: 08 Feb 2019 15:23 by ADMIN
This behavior is reproducible when we have applied Material theme and we have disabled the selection and drag of a RadTreeViewItem. 
A possible workaround is to set the MaterialAssist.CheckedBrush attached property to Null of the RadTreeViewItem which you don't want to select and drag.

 xmlns:material="clr-namespace:Telerik.Windows.Controls.MaterialControls;assembly=Telerik.Windows.Controls"

 <telerik:RadTreeViewItem Header="RootItem" material:MaterialAssist.CheckedBrush="{x:Null}" />
Declined
Last Updated: 09 Jan 2017 15:54 by ADMIN
Created by: Ivar
Comments: 2
Category: TreeView
Type: Bug Report
0
When sorting a table I get the following stacktrace.

06.12.2016 15:39:34 Error General Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at System.Windows.Controls.ItemContainerGenerator.Remove(GeneratorPosition position, Int32 count, Boolean isRecycling)
   at Telerik.Windows.Controls.TreeView.TreeViewPanel.CleanupRange(IList children, IItemContainerGenerator generator, Int32 startIndex, Int32 count)
   at Telerik.Windows.Controls.TreeView.TreeViewPanel.CleanupContainers(Int32 firstViewport, ItemsControl itemsControl)
   at Telerik.Windows.Controls.TreeView.TreeViewPanel.MeasureOverride(Size constraint)
   at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   at System.Windows.UIElement.Measure(Size availableSize)
   at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   at System.Windows.Controls.ItemsPresenter.MeasureOverride(Size constraint)
   at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   at System.Windows.UIElement.Measure(Size availableSize)
   at System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
   at System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
   at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
   at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   at System.Windows.UIElement.Measure(Size availableSize)
   at System.Windows.Controls.Control.MeasureOverride(Size constraint)
   at Telerik.Windows.Controls.RadTreeViewItem.MeasureOverride(Size availableSize)
   at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   at System.Windows.UIElement.Measure(Size availableSize)
   at Telerik.Windows.Controls.TreeView.TreeViewPanel.MeasureOverride(Size constraint)
   at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   at System.Windows.UIElement.Measure(Size availableSize)
   at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   at System.Windows.Controls.ItemsPresenter.MeasureOverride(Size constraint)
   at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   at System.Windows.UIElement.Measure(Size availableSize)
   at System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
   at System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
...
Completed
Last Updated: 22 Aug 2018 17:28 by Werner
Setting the HeaderStringFormat of RadTreeViewItem does not format the Header.

As a workaround, HeaderTemplate of RadTreeViewItem could be set which has TextBlock with StringFormat property set on its Text Binding.



 <DataTemplate x:Key="template">
                <TextBlock Text="{Binding ., StringFormat='Received ({0:N0})'}" />
</DataTemplate>


Available in LIB version: 2016.3.1121
Approved
Last Updated: 03 May 2017 11:18 by ADMIN
ADMIN
Created by: Martin Ivanov
Comments: 0
Category: TreeView
Type: Bug Report
1
Generated item cache is not cleared properly. This leads to memory leaking when items are virtualized and realized. 

As a workaround you can set the IsVisualCacheEnabled property of the TreeViewPanel to False. Note that this will work only in Recycling VirtualizationMode.

<telerik:RadTreeView.ItemsPanel>
    <ItemsPanelTemplate>
        <telerik:TreeViewPanel IsVisualCacheEnabled="False" />
    </ItemsPanelTemplate>
</telerik:RadTreeView.ItemsPanel>
Approved
Last Updated: 29 Dec 2016 14:43 by ADMIN
The vertical scroll cannot be moved via the mouse wheel or by clicking on the scrollbar's thumb after the End key is pressed. This is reproducible ONLY if the UI virtualization is enabled and if there are many items (500-1000+).
Declined
Last Updated: 21 Jan 2016 12:06 by ADMIN
When this property is set to false the changes are not saved.

Edit:
We have reviewed this item and we can confirm this is by design and it is not bug. IsInEditMode serves only for opening / closing the edit mode of the RadTreeViewItem. 
The way to submit changes is to use CommitEdit() method.
Completed
Last Updated: 31 Mar 2016 14:50 by Mark
Virtualized RadTreeView.

Windows Display Size is set to Larger (150%).

Expanding and collapsing TreeViewItems leads to ArgumentException in TreeViewPanel.ExtendDesiredSize method - "Width and Height must be non negative".

Available in LIB version: 2015.3.1207 
Declined
Last Updated: 03 Mar 2016 08:55 by Alan
A common request is to have a way to hide the root node of a RadTreeView so that the second-level nodes are displayed without a root.  If the RadTreeView is bound, it appears that this can be done through the hierarchical binding if one know what one is doing.  However, there does not seem to be a simple way to do it if the nodes to be added to the RadTreeView are added programmatically.  It would be helpful if there were a binary property on the RadTeeView to set whether the root node is displayed.


Reason for decline:
Both in databound tree or not , you can add only the items you need to display in the root source / root items collection of the tree. Generally, there is no value of hiding a root node that has children - why is inside the collection at all ?
Approved
Last Updated: 19 Mar 2019 15:39 by ADMIN
Currently, in Extended SelectionMode,  RadTreeView selects multiple Items with Shift + Click selection only if there is another RadTreeViewItem already selected with mouse.

Other controls like RadListBox, RadGridView hold reference to the business object which should be the start (the target) of the multiselection. RadTreeView holds such reference with weak reference to the container (RadTreeViewItem) and only if this container is selected with Mouse.

Adding such method (SetSelectionAnchor) in RadTreeView will help users better control the multiselection process.
Completed
Last Updated: 11 Jan 2016 08:26 by ADMIN
If the  RadTreeView control is used on touch device in scenario with Checkbox support, the TreeViewItem  cannot be (un)checked with a single tap.  

Available in LIB version: 2015.3.1109
1 2 3 4 5 6