首页 > 解决方案 > 将 wpf:ComboBox 绑定到 XAML 中的静态类

问题描述

我有一个包含静态字符串常量的静态类

 public static class ClassName
    {
        public const string Name1 = "Name1";
        public const string Name2 = "Name2";
    }

是否可以绑定(最好在 XAML 文件中)要从此类填充的组合框项?我需要这个类,因为这些字符串常量用于业务逻辑。

有这么多的绑定属性,我已经尝试了几个,但到目前为止没有运气。

标签: c#.netwpfcombobox

解决方案


您可以不通过数据绑定,而是通过使用x:Static表达式从字符串常量填充 ComboBox,并将所选项目绑定到视图模型中的字符串属性,如下所示:

<ComboBox SelectedValuePath="Content"
          SelectedValue="{Binding SelectedName}">

    <ComboBoxItem Content="{x:Static local:ClassName.Name1}"/>
    <ComboBoxItem Content="{x:Static local:ClassName.Name2}"/>
</ComboBox>

推荐阅读