【发布时间】:2014-10-17 09:44:05
【问题描述】:
我有一个DataGrid,如下所示
<DataGrid ItemsSource="{Binding Templates}" SelectedItem="{Binding SelectedTemplate, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
CanUserSortColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Templates" Binding="{Binding Path=., Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="*"/>
</DataGrid.Columns>
</DataGrid>
有问题的两个属性如下
private ObservableCollection<string> _templates;
public ObservableCollection<string> Templates {
get { return _templates; }
set {
if (_templates == value)
return;
_templates = value;
RaisePropertyChanged("Templates");
}
}
private string _selectedTemplate;
public string SelectedTemplate {
get { return _selectedTemplate; }
set {
if (_selectedTemplate == value)
return;
_selectedTemplate = value;
RaisePropertyChanged("SelectedTemplate");
}
}
我希望通过 UI 对上述DataGrid 中的单元格执行Edit 操作,并且相应的更改必须在绑定属性中可用。
现在String 类没有实现INotifyPropertyChanged,在 UI 中编辑单元格不会反映属性值的变化。那么有没有人知道是否有解决方法以便我可以实现所需的功能?
【问题讨论】: