【问题标题】:how to grab a WPF TextBlock using teststack如何使用 teststack 获取 WPF TextBlock
【发布时间】:2018-05-09 14:44:08
【问题描述】:

我制作了一个 WPF 应用程序,并使用 teststack.white 进行了一些自动化测试。他们有关于如何将 Windows 中的控件映射到他们的框架的文档,但我在任何地方都看不到 TextBlock。

他们的文档是 herehere

谢谢

【问题讨论】:

  • 你解决了吗?

标签: wpf white-framework teststack


【解决方案1】:

是的,你没看错,那里没有提到TextBlock

问题是 TextBlock 在 WPF 中只是更长的 Label,您可以阅读 here

一般的理解是 Label 是简短的单行文本 (但可能包括例如图像),而 TextBlock 工作得很好 也适用于多行字符串,但只能包含文本(字符串)。

所以您可以像使用Label 一样获取它:

Application application = Application.Launch(applicationPath);
Window window = application.GetWindows().First();

var MyTextBlock = window.Get<Label>("MyTextBlock");

这是我用来测试它的 XAML 标记:

<Window x:Class="WpfApp1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApp1"
        mc:Ignorable="d"
        Title="MainWindow" Height="103.966" Width="191.724">
    <Grid>
        <TextBlock x:Name="MyTextBlock" Text="Hello!" Background="CornflowerBlue" Foreground="White" VerticalAlignment="Top"/>

    </Grid>
</Window>

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-10-20
  • 2011-10-24
  • 1970-01-01
  • 1970-01-01
  • 2010-10-06
  • 2011-08-14
  • 1970-01-01
相关资源
最近更新 更多