如何更新datagridcomboboxColumnColumn项源?

我已经实现了一个带有一些datagrid列的datagrid。

这些列之一是DatagridComboboxColumn。那个项源绑定到了我的Viewmodel中的ObservableCollection列表。

如何更新itemsource,以便可以在UI上看到新列表?该列表正在从吸气剂更改,这意味着我不能使用OnPropertyChange。是否可以通过ViewModel更新UI,或者应该怎么做?

ViewModel属性:

    private ObservableCollection<string> usedHMDGroups = new ObservableCollection<string>();
    private ObservableCollection<string> startHMDGroups = new ObservableCollection<string>{
                "136b6405","136b6406","136b6407","136b6408","136b6409","136b6410","None"
    };
    public ObservableCollection<string> HMDGroups
    {
        get
        {
            ObservableCollection<string> HMDGroupList = new ObservableCollection<string>(startHMDGroups.Except(usedHMDGroups));
            return HMDGroupList;

        }
        set 
        {
            OnPropertyChange("HMDGroups");
            
        }
    }

datagrid的DatagridComboBoxColumn:

                <DataGridComboBoxColumn x:Name="hmdComboCol" Header="HMD Group" 
                                    SelectedValueBinding="{Binding HMDGroup,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" 
                                    ItemsSource="{Binding Path=HMDGroups,Source={StaticResource ComboItems}}"/>
iCMS 回答:如何更新datagridcomboboxColumnColumn项源?

我发现,我可以再次将列的itemsource设置为同一列表。 这将再次使用吸气剂。

hmdComboCol.ItemsSource = vhitems.HMDGroups;
本文链接:https://www.f2er.com/2014926.html

大家都在问