The JAWS screen reader cannot read the RadTreeListView and also its rows and cells.
This reproduces after the 2019.3.917 release.
To work this around create a custom RadTreeListViewAutomationPeer:
public class CustomTreeListView : RadTreeListView
{
protected override AutomationPeer OnCreateAutomationPeer()
{
return new CustomTreeListViewAutomationPeer(this);
}
}
public class CustomTreeListViewAutomationPeer : RadTreeListViewAutomationPeer
{
public CustomTreeListViewAutomationPeer(RadTreeListView owner)
: base(owner)
{
var methodInfo = typeof(RadTreeListViewAutomationPeer).GetMethod("GetItemPeers", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
methodInfo.Invoke(this, null);
}
protected override List<AutomationPeer> GetChildrenCore()
{
var frameworkPeer = new FrameworkElementAutomationPeer((FrameworkElement)this.Owner);
return frameworkPeer.GetChildren();
}
}
I found a bug when use MergeCells in grid view and tree list view, I am the license account, my support is out of date,But I still want to feadback the bug to you , I make a vedio in attachment
When use in radtreelistview , I can not explict set the MergedCellsStyle, maybe MergedCellsStyleSelector also have the bug.I just try MergedCellsStyle.
The selected rows of TreeListView are not returned when calling SelectionPattern.GetSelection method.
The problem can be reproduced with RadGridView as well.
workaround: Extract the ControlTemplate for the TreeListViewRow and set the Style explicitly or remove the local Style setter.
Expanded TreeListViewRow cannot be collapsed when select a child node and SelectionMode is set to "Expanded". Steps to reproduce: 1. Expand the root node 2. Select a child node 3. Try to collapse the root node
Keyboard navigation stops working when setting SelectionMode to "Extended", SelectionUnit to "Cell" and pressing twice the down keyboard key . The problem should be resolved with version Q1 2016.
private void RadTreeListView_Filtering(object sender, Telerik.Windows.Controls.GridView.GridViewFilteringEventArgs e)
{
var treeListView = sender as RadTreeListView;
var internalColumns = treeListView.GetType().GetProperty("InternalColumns", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).GetValue(treeListView);
internalColumns.GetType().GetProperty("ColumnWidthsCalculationPending", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic).SetValue(internalColumns, true);
}
private void RadTreeListView_Filtered(object sender, Telerik.Windows.Controls.GridView.GridViewFilteredEventArgs e)
{
Dispatcher.BeginInvoke(new Action(() =>
{
var treeListView = sender as RadTreeListView;
var internalColumns = treeListView.GetType().GetProperty("InternalColumns", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).GetValue(treeListView);
internalColumns.GetType().GetProperty("ColumnWidthsCalculationPending", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic).SetValue(internalColumns, false);
}), System.Windows.Threading.DispatcherPriority.Loaded);
}
Items are expanded when they match the filtering criteria. Once I added the filterdescriptor, the tree started to expand itself and when I put a break point in RowIsExpandedChanged event handler the treelistviewrow's IsExpanded property is already true Can you have a look at the attached sample application and try to achieve the following: 1. keep the on demand load (so only loadchildren when user clicked on the arrow to expand) 2. apply filter only on the expanded nodes