我正在尝试设置数据绑定,如标题中所述。
我遇到的问题是绑定到通用列表。
那里有任何例子。
我不能在通用列表上使用BindingListCollectionView,所以必须使用 的CollectionView。
我很困惑的问题是添加一个新项目 点击添加按钮我添加了一个新项目 通用列表并刷新视图。但如果用户 不遵循列表现在已空 项目
我知道这是基本的但是如何正常处理?
马尔科姆
答案 0 :(得分:3)
我在这里看到两个问题,我会尝试逐步回答。
鉴于这些ViewModel类(想象每个人都实现INotifyPRopertyChanged
):
public class DataView {
public Item SelectedItem {get; set; }
public List<Item> Items { get; private set; }
}
public class Item {
public string Title { get; set; }
}
将Data
个实例放入DataContext
,最小的视图可能如下所示:
<StackPanel>
<ListView Items="{Binding Items}" SelectedItem="{Binding SelectedItem}" />
<TextBox Text="{Binding SelectedItem.SelectedItem.Title}" />
</StackPanel>
为了能够创建新的Item
而不立即将其添加到列表中,您可能希望将新创建的对象拆分为其自己的区域。在视觉上,您可以将其添加到新的弹出窗口中或集成到列表中,但实际上它只会添加到 next 的列表中,尝试添加或确认父对话框。此时,您还可以验证Item
是否足以将其添加到列表中。