XAML ComboBox绑定到属性

3
如果我有一个 C# 中的属性;
    public CollectionView Months
    {
        get 
        {
            CollectionView retList = new Enumerations.Months().ToCollectionView<Enumerations.Months>();
            return retList;
        }
    }

我有一个下拉框(ComboBox);

<ComboBox x:Name="ddlMonth" Grid.Row="3" Grid.Column="1" 
ItemsSource="{Binding Source={StaticResource Months}}"/>

如何将我的ComboBox绑定到我的属性?
我应该补充说明,我完全不懂xaml。
1个回答

3
首先,那不是一个方法 - 它是一个属性。
你需要做的只是这样:
<ComboBox x:Name="ddlMonth" Grid.Row="3" Grid.Column="1" ItemsSource="{Binding Months}"/>

关键是要确保包含属性Months的类被设置为ComboBox或其父级(包括页面)的DataContext。因此,如果Months属性出现在承载ComboBox的同一页面中,则可以在页面的构造函数或Loaded事件中添加以下代码行:
this.DataContext = this;

如果ViewModel中出现了“Months”属性(我希望是这样的!),那么您需要将ViewModel分配给页面的DataContext(或仍然是ComboBox的父级(祖先)的子控件)。

+1,糟糕,是的抱歉不是方法,而是属性。修改了问题。谢谢。 - griegs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接