【问题标题】:WPF dynamic treeview with checkbox, data from SQL Server带有复选框的 WPF 动态树视图,来自 SQL Server 的数据
【发布时间】:2015-08-02 03:11:44
【问题描述】:

我想用数据库中的复选框构建一个动态树视图,以便为不同用户级别构建动态菜单权限。复选框将与值和键绑定。这些复选框将显示文本,当它被选中并保存时,我将能够从这些复选框中获取相应的 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

树应如下所示:请将点 (*) 想象为复选框

  • 表A
    • 表A1
      • 表C1
      • 表C2
      • 表C3
    • 表A2
    • 表A3
  • 表B
    • 表B1
    • 表B2
    • 表B3

提前致谢!

【问题讨论】:

  • 我需要同样的要求。你能分享你的解决方案吗

标签: c# wpf checkbox treeview


【解决方案1】:

您必须构建层次结构的可观察数据结构,然后将其绑定到树并指定 HierarchialDataTemplate 来解析嵌套绑定。

我可能会这样定义:

class ItemClass : INotifyPropertyChanged
{
  public bool IsChecked
  public string Header
  ObservableCollection<ItemClass> Children;
}

然后只需建立一个ObservableCollection&lt;ItemClass&gt; Items 并从数据库中填充它。将其绑定到 TreeView 的 ItemsSource,指定 HierarchialDataTemplate 和 TreeViewItem 的控件模板,并绑定 IsChecked 和 Header。 HierarchialDataTemplate 将告诉 TreeView 如何递归您的对象。

【讨论】:

  • 我是 WPF 新手,能否提供更详细的代码?
  • 我需要同样的要求。你能分享你的解决方案吗
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-24
  • 2016-07-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多