Я пытаюсь автоматизировать беглое управление лентами (www.fluent.codeplex.com). Я успешен в автоматизации большинства элементов управления. Но есть такая проблема, как кнопки «Закрыть», «Развернуть» и «Свернуть», которые не распознаются или не идентифицируются с помощью инструмента автоматизации пользовательского интерфейса, например, кодированный тест пользовательского интерфейса с использованием Visual Studio. Инструмент Spy не идентифицирует кнопки «закрыть», «развернуть», «свернуть» и т. Д. Я не могу закрыть приложение (которое использует свободную ленту) с помощью автоматизации.
Я искал следующий раздел кода в RibbonWindow.xaml
<StackPanel x:Name="PART_ButtonsPanel" HorizontalAlignment="Right" Margin="0,8,8,0" VerticalAlignment="Top" Orientation="Horizontal">
<Button x:Name="minimizeButton" Style="{DynamicResource CaptionButtonStyle}" Width="35" Height="19" BorderThickness="1,0,0,1" Command="{x:Static Fluent:RibbonWindow.MinimizeCommand}">
<Image Width="Auto" Height="Auto" HorizontalAlignment="Center" VerticalAlignment="Center" Stretch="None" Source="{DynamicResource ImageCaptionButtonMinimize}" SnapsToDevicePixels="True" RenderOptions.BitmapScalingMode="NearestNeighbor"/>
</Button>
<Button x:Name="maximizeButton" Margin="-1,0,0,0" Style="{DynamicResource CaptionButtonStyle}" Width="35" Height="19" BorderThickness="0,0,0,1" Command="{x:Static Fluent:RibbonWindow.MaximizeCommand}">
<Image Width="Auto" Height="Auto" HorizontalAlignment="Center" VerticalAlignment="Center" Stretch="None" Source="{DynamicResource ImageCaptionButtonMaximize}" SnapsToDevicePixels="True" RenderOptions.BitmapScalingMode="NearestNeighbor"/>
</Button>
<Button x:Name="normalizeButton" Margin="-1,0,0,0" Style="{DynamicResource CaptionButtonStyle}" Width="35" Height="19" BorderThickness="0,0,0,1" Command="{x:Static Fluent:RibbonWindow.NormalizeCommand}">
<Image Width="Auto" Height="Auto" HorizontalAlignment="Center" VerticalAlignment="Center" Stretch="None" Source="{DynamicResource ImageCaptionButtonNormalize}" SnapsToDevicePixels="True" RenderOptions.BitmapScalingMode="NearestNeighbor"/>
</Button>
<Button x:Name="closeButton" Margin="-1,0,0,0" Style="{DynamicResource CaptionButtonStyle}" Width="35" Height="19" BorderThickness="0,0,1,1" Background="Red" Command="{x:Static Fluent:RibbonWindow.CloseCommand}">
<Image Width="Auto" Height="Auto" HorizontalAlignment="Center" VerticalAlignment="Center" Stretch="None" Source="{DynamicResource ImageCaptionButtonClose}" SnapsToDevicePixels="True" RenderOptions.BitmapScalingMode="NearestNeighbor"/>
</Button>
</StackPanel>
Я перепробовал много вещей (например, поставил Automation Id), но ничего не получалось. Я смотрю на неправильную часть кода?
Может ли кто-нибудь помочь в добавлении интерфейса автоматизации или имени в кнопку закрытия или внесение некоторых изменений, объясняющих, почему я могу решить проблему? Единственное требование - «Закрыть», «Развернуть», «Свернуть», кнопка должна быть идентифицирована инструментом автоматизации пользовательского интерфейса.
Привет