【发布时间】:2011-08-31 07:54:06
【问题描述】:
我正在使用使用 TreeView 的应用程序。我想要一些节点有 复选框,但不是全部。 我知道我能做到:
treeView.CheckBoxes = true;
然后所有节点都有复选框。如何仅为选定的复选框添加复选框 节点?
【问题讨论】:
标签: c# checkbox treeview treenode
我正在使用使用 TreeView 的应用程序。我想要一些节点有 复选框,但不是全部。 我知道我能做到:
treeView.CheckBoxes = true;
然后所有节点都有复选框。如何仅为选定的复选框添加复选框 节点?
【问题讨论】:
标签: c# checkbox treeview treenode
查看TreeNode 类,您似乎必须实现自定义OnDrawNode 函数并执行一些Tag 操作。
一个例子:http://social.msdn.microsoft.com/forums/en-US/winforms/thread/9fbc737b-8385-4285-aa80-0e4602ff5b9b/
【讨论】:
您需要为您的树视图项或数据项创建一个新模板。
类似这样的:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<CheckBox Grid.Column="0" x:Name="checkBox" Visibility="Hidden"/>
<ContentPresenter Grid.Column="1"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="checkBox" Property="Visibility" Value="Visible"/>
</Trigger>
</ControlTemplate.Triggers>
编辑:显然,这是针对 WPF 的。 如果您使用的是 WinForms,那么这将没有任何帮助。对不起。
【讨论】: