wpf 中 带checkbox的treeview

本文介绍了如何在WPF应用中创建一个带有CheckBox功能的TreeView控件。详细讲解了ModernCheckboxTree.xaml文件的结构和TreeModel.cs中数据模型的实现,以及相关引用的设置步骤。
摘要由CSDN通过智能技术生成

(1)ModernCheckboxTree.xaml

<UserControl x:Class="FirstFloor.ModernUI.Windows.Controls.ModernCheckboxTree"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:local="clr-namespace:FirstFloor.ModernUI.Model"
             mc:Ignorable="d" 
             d:DesignHeight="300" d:DesignWidth="300">
    <Grid>
        <DockPanel>
            <Border DockPanel.Dock="Bottom">
                <StackPanel Orientation="Horizontal" ToolTip="右键有更多功能哦!">
                    <!--<Image Height="16" Width="16" Source="Images/16_16/emoticon_smile.png"></Image>-->
                    <Label Content="右键有更多功能哦!" Foreground="Gray"></Label>
                </StackPanel>
            </Border>
            <Border>
                <TreeView Name="tvZsmTree">
                    <TreeView.ContextMenu>
                        <ContextMenu>
                            <MenuItem Name="menuExpandAll" Header="全部展开" Click="menuExpandAll_Click">
                                <!--<MenuItem.Icon>
                                    <Image Source="Images/16_16/folder_open_arrow.png" />
                                </MenuItem.Icon>-->
                            </MenuItem>
                            <MenuItem Name="menuUnExpandAll" Header="全部折叠" Click="menuUnExpandAll_Click">
                                <!--<MenuItem.Icon>
                                    <Image Source="Images/16_16/folder_close_arrow.png" />
                                </MenuItem.Icon>-->
                            </MenuItem>
                            <MenuItem Name="menuSelectAll" Header="全部选中" Click="menuSelectAll_Click">
                                <!--<MenuItem.Icon>
                                    <Image Source="Images/16_16/tick.png" />
                                </MenuItem.Icon>-->
                            </MenuItem>
                            <MenuItem Name="menuUnSelectAll" Header="全部取消" Click="menuUnSelectAll_Click">
                                <!--<MenuItem.Icon>
                                    <Image Source="Images/16_16/delete.png" />
                                </MenuItem.Icon>-->
                            </MenuItem>
                        </ContextMenu>
                    </TreeView.ContextMenu>
                    <TreeView.ItemContainerStyle>
                        <Style TargetType="TreeViewItem">
                            <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}"></Setter>
                            <EventSetter Event="TreeViewItem.PreviewMouseRightButtonDown" Handler="TreeViewItem_PreviewMouseRightButtonDown"/>
                        </Style>
                    </TreeView.ItemContainerStyle>
                    <TreeView.ItemTemplate>
                        <HierarchicalDataTemplate DataType="{x:Type local:TreeModel}"  ItemsSource="{Binding Children}">
                            <StackPanel  Margin="-2,0,0,0" Orientation="Horizontal" x:Name="staTree">
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值