启用在 WPF 中编辑列表框项
本文关键字:列表 编辑 WPF 启用 | 更新日期: 2023-09-27 18:31:43
>我正在编写一个基于列表框的标记控件。
它使用以下模板显示列表框项:
<Setter Property="ItemTemplate">
<Setter.Value>
<DataTemplate>
<local:TagControl Text="{Binding Path=., Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Remove="RemoveItem" />
</DataTemplate>
</Setter.Value>
</Setter>
我注意到,当我更新 TagControl 的文本时,列表框中的原始项不会更新。我使用ObservableCollection<string>
作为项目源。
TagControl 实现 INotifyPropertyChanged 并调用该事件。
我做错了什么?
我已经重现了您的问题,可以提供解决方案。 ObservableCollection<string>
是使用只读的 IEnumerable 枚举的。
如果将ObservableCollection<string>
替换为 ObservableCollection<DataItem>
其中
public class DataItem
{
public string Name{get;set;}
}
,然后绑定到数据模板中的"名称",枚举的 DataItem 是只读的,但 Name 属性是读写的,将在编辑列表项中的文本时更新。