gpt4 book ai didi

更改项目 DisplayMemberPath MVVM 时 WPF ListView 未更新

转载 作者:行者123 更新时间:2023-12-03 10:14:12 27 4
gpt4 key购买 nike

我有绑定(bind)到 ObservableCollection 的 WPF ListView。

这是我的 ListView :

<ListView 
BorderBrush="#6797c8"
BorderThickness="2"
ItemsSource="{Binding Path=MainCategoriesCollection, UpdateSourceTrigger=PropertyChanged}"
DisplayMemberPath="Category"
SelectedValuePath="MainCatID"
SelectedItem="{Binding MainCategorySelectedItem}"
SelectedIndex="{Binding MainCategorySelectedIndex, Mode=TwoWay}"
FontSize="14"/>

这是我的ItemSource:
    private ObservableCollection<DataModel.MainCategories> mainCategoriesCollection;
public ObservableCollection<DataModel.MainCategories> MainCategoriesCollection
{
get
{
if (mainCategoriesCollection == null)
{
mainCategoriesCollection = new ObservableCollection<DataModel.MainCategories>();
}
return mainCategoriesCollection;
}
set
{
mainCategoriesCollection = value;
RaisePropertyChanged("MainCategoriesCollection" );
}
}

我有有线问题。当我从 MainCategoriesCollection 添加项目或删除项目时,我的 ListView 会毫无问题地更新,但是当我采用特定项目并更改代表“DisplayMemberPath”的项目属性时,我无法在 ListView 中看到更改。我调试了问题,发现 MainCategoriesCollection 中存在更改,但我的 ListView 拒绝显示它。

有任何想法吗?

最佳答案

确保 DisplayMemberPath 属性位于具有所有 INotifyPropertyChanged 内容的 View 模型上,即该属性是否可观察?

关于更改项目 DisplayMemberPath MVVM 时 WPF ListView 未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15208696/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com