带有复选框的WPF动态树状视图,数据来自SQL Server
本文关键字:数据 Server SQL 视图 复选框 WPF 动态 | 更新日期: 2023-09-27 18:06:03
我想建立一个动态树视图与复选框从数据库建立一个动态菜单权限的不同用户的级别。复选框将与值和键绑定。这些复选框将显示文本,当它被选中并保存时,我将能够从这些复选框中获得相应的id。
谁来帮帮我?
表中数据
Menu Header TableA : Here Menu TableA has ID: TableA ID: SubMenuHeader: A1 TableA1 A2 TableA2 A3 TableA3 Menu TableB : Here Menu TableB has ID: TableB ID: SubMenuHeader: B1 TableB1 B2 TableB2 B3 TableB3 TableA1 ID: SubSubMenuHeader: RefMenuTable_ID: C1 TableC1 A1 C2 TableC2 A1 C3 TableC3 A1
树应该看起来像:请想象点(*)作为复选框
- 为多
- TableA1
- TableC1
- TableC2
- TableC3
- TableA2
- TableA3
表b - TableA1
- TableB1
- TableB2
- TableB3
你必须构建一个层次结构的可观察数据结构,然后将其绑定到树,并指定HierarchialDataTemplate来解析嵌套绑定。
我可能会定义这样的东西:
class ItemClass : INotifyPropertyChanged
{
public bool IsChecked
public string Header
ObservableCollection<ItemClass> Children;
}
然后构建一个ObservableCollection<ItemClass> Items
并从数据库中填充它。将它绑定到TreeView的ItemsSource,指定HierarchialDataTemplate和TreeViewItem的控件模板,并绑定IsChecked和Header。HierarchialDataTemplate将告诉TreeView如何递归地遍历你的对象。