无法在ObservableCollection中显示组合框中的项目

时间:2016-08-29 12:20:22

标签: c#

我有这个组合框:

<ComboBox x:Name="notification_mode" ItemsSource="{Binding NotificationMode}" 
                          DisplayMemberPath="Text"/>

在我的模型中,我创建了一个类,它还为组合框提供了值:

public class ComboboxItem
{
    public string Text { get; set; }
    public object Value { get; set; }

    public override string ToString()
    {
        return Text;
    }
}

所以在我的viewmodel中我创建了一个observableCollection来存储所有项目:

private ObservableCollection<Models.ComboboxItem> _notificationMode = new ObservableCollection<Models.ComboboxItem>();

    public ObservableCollection<Models.ComboboxItem> NotificationMode
    {
        get
        {
            return _notificationMode;
        }
        set
        {
            Models.ComboboxItem item = new Models.ComboboxItem();
            item.Text = "Con sonoro";
            item.Value = 0;
            _notificationMode.Add(item);
        }
    }

组合框项目中的问题没有显示。为什么会这样?

1 个答案:

答案 0 :(得分:1)

这是标准的属性声明

_count

您可以在ViewModel 构造函数

中初始化上面定义的属性
public ObservableCollection<Models.ComboboxItem> NotificationMode
{
    get
    {
        return _notificationMode;
    }
    set
    {
        _notificationMode = value;
        OnPropertyChanged("NotificationMode");
    }
}