在 WPF 应用程序中使用 FLAUI Inspect 工具检查时,如果数据不可见,如何从列表元素中检索数据?

问题描述 投票:0回答:1
这个问题已经解决了。滚动下面寻找答案

我正在研究 UI 自动化,并且是 FLAUI 的新手。在这里,我希望提取用橙色笔注释的数据。以绿色突出显示的框是一个 listItem;它是列表的一部分。我希望从这个特定元素中提取数据。

我尝试使用 FLAUI Inspect 工具查找此元素,这就是我发现的...

这是此树中第一个 ListItem 的详细信息窗格,对于此处的所有 ListItem 元素都是相同的。

有没有办法使用 FLAUI 从 UI 中提取这些数据,或者根本不可能? 您还可以提供一个参考,我可以在其中阅读您建议的解决方案吗?

此 WPF 应用程序基于 .NET Framework 4.7.2、c# v10 构建。 FlaUInspect v1.3.0.

我尝试使用 FLAUI Core(FLAUI.Core.Signed 4.0.0 和 FLAUI.UIA3.Signed 4.0.0)来自动化此操作

对于我用红笔所做的所有抽象表示抱歉。必须要做。

编辑1:

我尝试使用 Snoop 工具(另一个 UI 检查器工具)来检查它。在这里,我能够找到我一直在寻找的元素。 ListBoxItem 是在 FLAUI Inspector 工具中显示为 ListItem 的元素,以蓝色突出显示的元素是我一直在搜索的元素。不幸的是,我无法通过 FLAUI 检索这些数据。任何帮助找到获取这些数据的方法的帮助将不胜感激。

[![窥探检查器工具][1]][1]

c# .net wpf wpf-controls flaui
1个回答
0
投票

解决方案:这是对我有用的解决方案......

问题出在构建网格行时使用的 TextBlock 元素。由于某种原因,FlaUI似乎不支持TextBlock。我们将其更改为 Label 并且现在可以使用了。 我的前辈帮我解决了这个问题。

之前的代码大致是这样的

<Grid>
  <Border>
    <TestBlock Text="{Binding data}"/>
  </Border>
</Grid>

现在我们把它改成这样了

<Grid>
  <Border>
    <Label Text="{Binding data}"/>
  </Border>
</Grid>

这正是我所期待的。我努力不碰开发人员编写的代码,但似乎没有其他方法可以实现这一点。

© www.soinside.com 2019 - 2024. All rights reserved.