基于字符串列表动态加载用户控件(后面没有代码)
本文关键字:代码 控件 字符串 列表 动态 用户 加载 | 更新日期: 2023-09-27 18:14:12
我正在研究一个项目,用户应该能够导出不同自定义对象的值。
我正试图找到一种方法来加载一些复选框动态(我在想用户控件)基于属性名称(字符串)的列表。然后,用户应该能够根据应该导出的值选中或取消选中复选框。
我的问题是,我不能给用户控件复选框自定义名称,链接到应该导出的值
ListBox
或ItemsControl
(如果您需要更大的灵活性)绝对是可行的方法。然而,仅仅生成CheckBox
是不够的,因为你还需要一种方法来跟踪它们是否被选中,所以你想要创建某种Choice
类,并将CheckBox
的属性绑定到Choice
类的属性。像这样:
<ListBox ItemsSource="{Binding Choices}">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding Name}"
IsChecked="{Binding IsChosen}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
和代码:
public class Choice
{
public string Name { get; set; }
public bool IsChosen { get; set; }
}
如果您的Choices
属性是Choice
的List
或IEnumerable