将 wpf:ComboBox 绑定到 XAML 中的静态类
Posted
技术标签:
【中文标题】将 wpf:ComboBox 绑定到 XAML 中的静态类【英文标题】:Bind wpf:ComboBox to a static class in XAML 【发布时间】:2021-12-17 10:17:03 【问题描述】:我有一个包含静态字符串常量的静态类
public static class ClassName
public const string Name1 = "Name1";
public const string Name2 = "Name2";
是否可以绑定(最好在 XAML 文件中)要从此类填充的组合框项?我需要这个类,因为这些字符串常量用于业务逻辑。
绑定属性太多了,我尝试了好几个,但到目前为止都没有运气。
【问题讨论】:
【参考方案1】:您可以不通过数据绑定,而是使用x:Static
表达式从字符串常量填充组合框,并将所选项目绑定到视图模型中的字符串属性,如下所示:
<ComboBox SelectedValuePath="Content"
SelectedValue="Binding SelectedName">
<ComboBoxItem Content="x:Static local:ClassName.Name1"/>
<ComboBoxItem Content="x:Static local:ClassName.Name2"/>
</ComboBox>
【讨论】:
以上是关于将 wpf:ComboBox 绑定到 XAML 中的静态类的主要内容,如果未能解决你的问题,请参考以下文章
c#wpf combobox将source绑定到一个collection,item作为另一个collection的属性
具有空值的 WPF ComboBox SelectedValue 绑定显示为空白
WPF ComboBox ItemTemplate 绑定到字符串集合