【问题标题】:TreeView: checkboxes only in child nodesTreeView:仅在子节点中的复选框
【发布时间】:2023-04-10 03:17:01
【问题描述】:

我需要一个树形视图控件:

  1. 根节点没有复选框,只有图像。
  2. 所有子节点都有一个复选框 + 图像。

C#、.net 2.0、winforms(不是 wpf)

【问题讨论】:

    标签: c# winforms


    【解决方案1】:

    WinForms 树视图默认不支持混合复选框/非复选框节点

    您可以在树视图上全局启用 CheckBoxes,并使用 this method 在特定节点上禁用它们

    【讨论】:

      【解决方案2】:

      您可以禁用复选框。 首先将 TreeView DrawMode 属性设置为 OwnerDrawAll。 然后在 DrawNode 方法下检查子节点集合并将 checked 属性设置为 false 即。

      private void xmlStructureTree_DrawNode(object sender, DrawTreeNodeEventArgs e)
              {
                  if (e.Node.Nodes.Count != 0)
                  {
                      e.Node.Checked = false;
                  }
                  e.DrawDefault = true;
              } 
      

      【讨论】:

      • 这将取消选中它,而不是隐藏或禁用。
      猜你喜欢
      • 2017-07-04
      • 2012-06-12
      • 1970-01-01
      • 1970-01-01
      • 2015-06-18
      • 2012-06-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多