in src/AccessibilityInsights.SharedUx/Controls/HierarchyControl.xaml.cs [705:755]
private void OnSelected(object sender, RoutedEventArgs e)
{
var tvi = sender as TreeViewItem;
var vm = tvi.DataContext as HierarchyNodeViewModel;
if (vm != null)
{
btnMenu.DataContext = vm;
if (vm.Element.IsRootElement())
{
btnMenu.Visibility = Visibility.Collapsed;
btnTestElement.Visibility = Visibility.Collapsed;
}
else if (this.IsLiveMode)
{
btnMenu.Visibility = Visibility.Visible;
btnTestElement.Visibility = Visibility.Visible;
var hlptxt = string.Format(CultureInfo.InvariantCulture,
Properties.Resources.HierarchyControl_LiveMode_InvokeToTestFormat,
vm.Element.Glimpse);
AutomationProperties.SetHelpText(btnTestElement, hlptxt);
}
else
{
btnMenu.Visibility = Visibility.Visible;
btnTestElement.Visibility = Visibility.Collapsed;
}
tvi.BringIntoView();
Dispatcher.BeginInvoke(new Action(() =>
{
try
{
GeneralTransform myTransform = tvi.TransformToAncestor(treeviewHierarchy);
System.Windows.Point p = myTransform.Transform(new System.Windows.Point(0, 0));
btnTestElement.Height = TreeButtonHeight;
btnTestElement.Margin = new Thickness(0, p.Y, btnTestElement.Margin.Right, 0);
btnMenu.Height = TreeButtonHeight;
btnMenu.Margin = new Thickness(0, p.Y, btnMenu.Margin.Right, 0);
}
#pragma warning disable CA1031 // Do not catch general exception types
catch (Exception ex)
{
ex.ReportException();
}
#pragma warning restore CA1031 // Do not catch general exception types
}));
}
e.Handled = true;
}