背景: 我有一个Datagrid有一些测量,我们可以批准和阻止这个测量。 现在我们为此创建了一个新类型,例如“已取消”。但此类型仅由服务器需要并将其显示给客户。 但客户不应选择此“已取消”,而应选择其他两种类型。在DatagridComboBox中禁用特定项目的选择
该列表从数据库中获取所有不同的元素(3个条目)。 首先,我尝试从ApprovementCollection中删除已取消的项目,但随后显示的是空字段而不是“已取消”。
问: 是否有可能,禁用只从DataGridComboBoxColumn中的ItemSource属性的列表界这3项中的一个?
禁用或不显示在选择菜单是我必须做的。 (只有 “Freigabe” 和 “GESPERRT”)
查看:
<DataGridComboBoxColumn ClipboardContentBinding="{x:Null}"
DisplayMemberPath="ApprovementText"
Header="{x:Static trans:Translations.ClearenceHeader}"
ItemsSource="{Binding Source={StaticResource PossibleComponentMeasurementApprovements}}"
SelectedItemBinding="{Binding Approvement,
UpdateSourceTrigger=PropertyChanged}" />
视图模型:
private IEnumerable<ComponentMeasurementApprovement> possibleComponentMeasurementApprovements;
public IEnumerable<ComponentMeasurementApprovement> PossibleComponentMeasurementApprovements {
get { return possibleComponentMeasurementApprovements; }
set {
possibleComponentMeasurementApprovements = value;
OnPropertyChanged();
}
}
感谢您的帮助
只是不要把它放在'PossibleComponentMeasurementApprovements'集合中。 – icebat