Hi,
I found a bug when drag&dropping selected tree nodes (extended multi-selection) when the tree is virtualized. Items that never got into view are missing from the Payload Manager Data object. If virtualization is off, works as expected.
Please see modified sample for demonstration. I added 200+ items to League A -> Division A. Select the first item, quickly scroll by dragging vertical scrollbar to the bottom of the list and extend selection to the whole list. Then perform drag and drop. Note, not all items were moved.
Also, the drag visual helper moves and updates very very slowly when dragging hundredths of objects. In our application, we have thousands of objects, which makes it unusable
Thank you for a quick fix.
Tomas.
When the TreeView's ScrollViewer is Visible, changing the tree's width to 0 them back to Auto breaks the scrolling function of the ScrollViewer. The workaround is to make the TreeView Collapsed before setting the Width to 0 and make it Visible before setting the Width back to Auto. Reason for declination: The feedback item is declined due to duplication with the one below: http://feedback.telerik.com/Project/143/Feedback/Details/113789-treeviews-scrolling-does-not-work-if-the-trees-width-is-set-to-0-and-then-back Please follow it instead.
When the RadTreeViewItem (or the RadTreeView) is disabled and after a delay is enabled again it should go in "Normal" state. Now the control preserves its state, hence you are able to send more than one RadTreeViewItem in "Hovered" state.
RadTreeView or RadPanelBar has custom Style in which there is no ScrollViewer in the ControlTemplate. IsDragDropEnabled is set to true. When dragged item is dragged above the tree/panelbar - null reference exception occurs in RadTreeView.AutoScrolling.cs.
When the data is bound to the RadTreeView the AutoScrollToSelectedItem doesn't work. The same behavior appears when the RadTreeViewItems are created declarative and the SelectedItem is set True on any of its root level items. Available in LIB version: 2014.3.1301
When the IsVirtualizing property is switched on runtime (for example as a result of applied binding) the generatedContainers are not updated and potentially will not return null when a container exists. === Marking this Declined: There is no such public collection. Too old item with only a single vote (like).
When a copy of the Control Template of the RadTreeView is edited in Blend, the followin error is thrown: TargetName property cannot be set on a Style Setter. Reason for closing: The bug is not reprodible with VS 2012, WPF 4.5 and latest official version of telerik UI for wpf.
Showing a message box in the DoubleClick event handler in a D&D enabled RadTreeView starts a drag operation unexpectedly. Closing this one - we are not able to reproduce it with our latest binaries.
RadTreeView is throwing an IndexOutOfRangeException when the host panel is resized. StackTrace: at Telerik.Windows.Controls.TreeView.IndexTree.CumulativeValue(Int32 endIndex) in c:\TB\105\WPF_Scrum\Release_WPF\Sources\Development\Controls\Navigation\TreeView\Virtualization\IndexTree.cs:line 271 at Telerik.Windows.Controls.TreeView.TreeViewPanel.ExtendDesiredSize(ItemsControl itemsControl, Size stackDesiredSize, Int32 pivotIndex, Boolean before) in c:\TB\105\WPF_Scrum\Release_WPF\Sources\Development\Controls\Navigation\TreeView\Virtualization\TreeViewPanel.cs:line 2287 at Telerik.Windows.Controls.TreeView.TreeViewPanel.MeasureOverride(Size constraint) in c:\TB\105\WPF_Scrum\Release_WPF\Sources\Development\Controls\Navigation\TreeView\Virtualization\TreeViewPanel.cs:line 1680 === This item is declined because we are unable to reproduce such exception with our latest binaries.
RadTreeView is virtualized and we use ItemContainerStyleSelector. The style selector select styles which set have ExpanderStyle property. The ExpanderStyle is not applied. There is an attached project which can be used as a possible workaround, Available in Official Release R3 2016. REOPEN: The bug will be re-opened from 5 Dec 2016 internal build as well as in the official R3 2017 release. We reverted the fix for this bug due to performance hit we found in R3 2016. The workaround suggested in the attached project is still valid.
When you have a, for example, a RadSlider in a RadTreeViewItem and you try to move the Thumb of the slider, the drag events of the tree view item will be triggered. The same behavior is observed also when you have a TextBox instead of a slider and try to mark part of the text in it with the mouse.
Use virtualization in hierarchical mode. Select a RadTreeViewItem that has parent. Move it somewhere in the source collection of the parent programmatically - reorder or sort. The item will remain in Museover State forever. Perform the same steps with Recycling mode, there might be missing RadtreeViewItems (not rendered at all) after the sort / reorder operation.
Select a RadTreeViewItem with MOuse and in SelectionChaged event handler disable the RadTreeView. Then when you enable it programatically, the SelectedItems's foreground is wrong. Available in LIB Version: 2015.2.720.
TreeView is bound to CollectionViewSource. Certain items are expanded. The CVS is refreshed leading to ArgumentOutOfRange Exception in the TreeViewPanel.cs NOTE: The bug is reported via the following scenario. When the bound IsExpanded property is changed in the model, OnCollectionChanged with NotifyChangedCollectionAction.Reset is invoked. We consider this as highly unsafe operation. What actually happens is that by the time containers are measured / arranged (because the IsExpanded is triggered) - Reset also triggers reset / measure arrange of all items. This is the same as modifying a list/collection when it is iterated - the framework wll throw an error. To better prove this is unsafe, we also tested System.Windows.Controls.TreeView. On MouseDown, we set IsExpanded = true on collased item and in the PropertyChnaged handler we invoked OnCollectionChanged with Reset in the bound ObservableCollection. This resulted in StackOverflowException in PresentationCore.dll. Conclusions. The Exception is fixed in the RadTreeView but we consider invoking Reset in such moment (during measure/arrange) as not supported / critical / unsafe operation.
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
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
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>
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
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}" />
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.