【发布时间】:2011-09-16 09:48:54
【问题描述】:
我有一个 ObservableCollection,我希望能够通过 UI 添加和删除字符串,最好通过数据绑定来实现。该集合已经公开,因此可以在 itemssource 绑定表达式中使用..
有什么建议吗?
【问题讨论】:
-
关于什么的建议?听起来你已经拥有了你需要的东西。
标签: wpf data-binding
我有一个 ObservableCollection,我希望能够通过 UI 添加和删除字符串,最好通过数据绑定来实现。该集合已经公开,因此可以在 itemssource 绑定表达式中使用..
有什么建议吗?
【问题讨论】:
标签: wpf data-binding
您可以使用DataGrid 来获取添加和删除功能。但是,DataGrid 需要底层项目的无参数构造函数以支持添加操作。
你可以对字符串使用包装器
public class StringWrapper
{
public StringWrapper() { }
public string Value { get; set; }
}
public ObservableCollection<StringWrapper> MyStrings
{
get;
set;
}
那么你的DataGrid就可以作为ItemsSource使用了
<DataGrid ItemsSource="{Binding MyStrings}"/>
【讨论】:
我认为您只需将视图控件的“selecteditem”绑定到一个字符串对象和一个带有命令的按钮即可删除它。
在该命令中,您只需执行删除逻辑。
要添加一个新的,您必须使用一个文本框并将其文本绑定到一个新的字符串对象。然后执行与“删除”按钮相同的操作,但方式相反。
其他选项是使用数据网格,但这取决于您的视图要求。
【讨论】: