WinForm------TreeList修改节点图标和按钮样式

转载:

https://documentation.devexpress.com/#WindowsForms/DevExpressXtraTreeListTreeList_CustomDrawNodeButtontopic

1.修改节点图标

(1)拖入TreeList控件(这里如何加载数据就不多说了哈)和ImageLIst控件

a.给ImageList添加图像

b.修改TreeList控件的属性

(2).在属性栏找到TreeList控件的CustomDrawNodeImages事件,并添加以下代码

private void treeList1_CustomDrawNodeImages(object sender, DevExpress.XtraTreeList.CustomDrawNodeImagesEventArgs e)
        {
            if (e.Node.Nodes.Count > 0)
            {
                if (e.Node.Expanded)
                {
                    e.SelectImageIndex = 2;
                    return;
                }
                e.SelectImageIndex = 1;
            }
            else
            {
                e.SelectImageIndex = 0;
            }
        }

(3)完成

2.修改按钮样式

在TreeList控件属性栏找到CustomDrawNodeButton事件,并添加以下代码

private void treeList1_CustomDrawNodeButton(object sender, DevExpress.XtraTreeList.CustomDrawNodeButtonEventArgs e)
        {
            Rectangle rect = Rectangle.Inflate(e.Bounds, 0, -2);

            // painting background
            Brush backBrush = new LinearGradientBrush(rect, Color.Blue, Color.LightSkyBlue,
              LinearGradientMode.ForwardDiagonal);

            //填充指定矩形内部
            e.Graphics.FillRectangle(backBrush, rect);

            //绘画3D边框
            ControlPaint.DrawBorder3D(e.Graphics, rect, Border3DStyle.RaisedOuter);

            //要显示的图画
            string displayCharacter = e.Expanded ? "-" : "+";

            //水平,垂直居中
            StringFormat outCharacterFormat = new StringFormat();
            outCharacterFormat.Alignment = StringAlignment.Center;
            outCharacterFormat.LineAlignment = StringAlignment.Center;

            //绘画图标
            e.Graphics.DrawString(displayCharacter, new Font("Verdana", 8, FontStyle.Bold),
              new SolidBrush(Color.White), rect, outCharacterFormat);

            // 禁止默认的图标显示
            e.Handled = true;
        }
时间: 2024-10-18 06:08:35

WinForm------TreeList修改节点图标和按钮样式的相关文章

ios开发之Swift标签栏按钮UITabBarItem样式修改(图标文字尺寸,颜色等)

UITabBarItem在开发中非常的常用了它可以用来设置字体颜色及图片的设置等等,下面我们来看一篇关于ios开发之Swift标签栏按钮UITabBarItem样式修改(图标文字尺寸,颜色等)的例子,具体的细节如下所示. 1,tabBarItem图片的推荐尺寸和最大支持尺寸 下面是标签栏(UITabBar)中tab按钮图标分别在1x.2x.3x下不会压缩变形的尺寸: @1x : 推荐 25 x 25   (最大: 48 x 32)@2x : 推荐 50 x 50   (最大: 96 x 64)@

转:zTree高级入门:如何通过扩展节点的属性来达到是否显示节点的删除编辑等图标(按钮)

当我们在使用ztree树组件的节点编辑功能时,只要我们引入了ztree相关节点编辑的js脚本文件: <script type="text/javascript" src=”/js/jquery.ztree.exedit-3.5.js"></script> 接着配置setting内的edit节点: var setting = { edit: { enable: true, showRenameBtn: true, showRemoveBtn: true

[WinForm][DevExpress][TreeList]父子节点CheckState状态同步

关键代码: /// <summary> ///同步父子节点勾选状态 ///说明 ///在AfterCheckNode事件中使用代码 ///eg:e.Node.SyncNodeCheckState(e.Node.CheckState); /// </summary> /// <param name="node">需要同步的节点</param> /// <param name="check">节点当前勾选状态&

[WinForm][DevExpress]设置TreeList图片节点背景色

关键代码: /// <summary> /// 设置图片节点的背景色 /// 说明:在CustomDrawNodeImages事件中使用 /// </summary> /// <param name="tree">TreeList</param> /// <param name="e">CustomDrawNodeImagesEventArgs</param> /// <param nam

c# winform TreeView NODE(节点) 重命名或获取节点修改后的值

在程序开发过程中我们经常用到treeview,还经常要修改节点的名字.节点名字修改后还想及时更新数据库.这时问题就来了,怎样获取NODE(节点)更新后的值呢?本人试了很多方法最终分析出treeview节点名字修改的AfterLabelEdit事件.事件内有两个参数如下代码 sender 和 e. private void treeView2_AfterLabelEdit(object sender, NodeLabelEditEventArgs e) { } 代码内的e 有两个值,e.Lable

一个按钮样式测试出你的 css功力

简单点,bb的方式简单点.好的,大哥. 对于前端开发来说,css是必备的基本功.你可能会说css嘛,就那样,用的时候先这样,在这样.对我完全知道你在说什么,所以你可以认为css是很简单,因为我们涉及的都不深. 我们来看一段非常简单的代码(真的是非常的简单): <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name=&quo

uploadify 自定义按钮样式

uploadify是一款不错的JQUERY上传插件,但是FLASH按钮的外挂往往跟我们网页的设计不太搭配.一开始我还试图反编译uploadify.swf来修改其外观,结果发现反编译为FLA后里面没有任何图片资源. 原来,这个按钮是用CSS绘制的.代码文件是uploadify.css. 打开这个文件后,你会看见CSS设置的按钮样式.OK,现在想修改就很简单了,不论你是写一段新的CSS还是替换成图片都可以的. 我懒省事,就直接用图片作为按钮背景了. 代码: .uploadify-button { b

[HTML/CSS]uploadify自定义按钮样式

概述 在项目中经常用到uploadify上传插件,但是FLASH按钮的外观往往跟我们网页的设计的主题色不太搭配.这时就需要对其样式进行修改. 样式文件是uploadify.css. 打开这个文件后,你会看见CSS设置的按钮样式. 1 .uploadify-button { 2 background-color: #505050; 3 background-image: linear-gradient(bottom, #505050 0%, #707070 100%); 4 background-

Flex4_Tree组件2(添加多选框、修改树图标)

1.新建AS类,用于为Tree生成复选框,及一些选择事件. package com.th.myUtils { import flash.events.Event; import flash.events.MouseEvent; import mx.controls.Alert; import mx.controls.CheckBox; import mx.controls.Tree; import mx.controls.treeClasses.TreeItemRenderer; import