如何动态添加/删除行? [WPF]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何动态添加/删除行? [WPF]相关的知识,希望对你有一定的参考价值。
答案
你可以使用DataGrid,ItemsControl和ListBox,这取决于你。
让我们假设每一行代表一个名为“MyClass”的类的实例。
首先,您应该在ViewModel中创建ObservableCollection。
Public ObservableCollection<MyClass> MyClassList=new ObservableCollection<MyClass>();
在Xaml中,您可能有像这样的ItemsControl
<ItemsControl ItemsSource="{Binding MyClassList}" Margin="10">
<ItemsControl.ItemTemplate>
<DataTemplate>
<!-- Here is how you represent your data. But you should have a remove button here. -->
<Button Content="Remove"
Command="{Binding RemoveCommand}" CommandParameter="{Binding}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
还有一个添加新实例的按钮。
<Button Content="Add" Command="{Binding AddCommand}"/>
在ViewModel中,AddCommand是添加一个新的实例.RemoveCommand是删除实例。
private void ExecuteAdd()
{
MyClassList.Add(new MyClass());
}
private void ExecuteRemove(object param)
{
MyClassList.Remove(obj);
}
以上是关于如何动态添加/删除行? [WPF]的主要内容,如果未能解决你的问题,请参考以下文章