gpt4 book ai didi

c# - 如何迭代其中的选项卡和列表框

转载 作者:行者123 更新时间:2023-11-30 18:46:25 26 4
gpt4 key购买 nike

我有一个 WPF 应用程序,用于选择稍后作为自动化测试应用程序的一部分运行的测试。

在 UI 中,我有多个选项卡控件代表每个测试类别。每个选项卡内都有一个包含每个测试的复选框的列表框。

当用户选择所有测试并单击运行按钮时,我需要遍历每个选项卡和其中的列表框以构建最终测试列表。我不想有大量类似以下内容的声明:

GetTab1Tests();
GetTab2Tests();
GetTab3Tests();
// Continue

我想以一种我可以说的方式设计它:

foreach(Tab t in tabControl)
{
CollectTestsFromListbox(**listbox associated with t**);
}

如何绑定(bind)这些信息?我最好的猜测是创建一个字典,将选项卡与必要的列表框配对,但这种良好做法是否向前发展?随着被测试应用程序的增长,对更多选项卡的需求也可能增长。

编辑目前我尝试设置选项卡的 DataContext:

<TabItem x:name="tabLoginTests DataContext="{Binding ElementName=lstboxLoginTests}">

在 .xaml.cs 文件中我可以调用:

tabLoginTests.DataContext

所有这一切都是返回 {System.Windows.Controls.ListBox Items.Count:4}。我不知道如何获取这个对象并获取列表框控件本身。有什么建议吗?

最佳答案

在创建 ListBox 时尝试将 ListBox 添加到目标 TabControl 对象的 Tag 属性。

然后您将能够使用 t.Tag 访问它。然后您可以将其转换为 ListBox(.Tag 是一个对象)。

关于c# - 如何迭代其中的选项卡和列表框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26262614/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com