C#中TreeView节点的自定义绘制方法
本文实例讲述了C#中TreeView节点的自定义绘制方法。分享给大家供大家参考。具体如下:
if ((e.State & TreeNodeStates.Selected) != 0) { //演示为绿底白字 e.Graphics.FillRectangle(Brushes.DeepSkyBlue, e.Node.Bounds); Font nodeFont = e.Node.NodeFont; if (nodeFont == null) nodeFont = ((TreeView)sender).Font; e.Graphics.DrawString(e.Node.Text, nodeFont, Brushes.White, Rectangle.Inflate(e.Bounds, 2, 0)); } else { e.DrawDefault = true; } if ((e.State & TreeNodeStates.Focused) != 0) { using (Pen focusPen = new Pen(Color.Black)) { focusPen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot; Rectangle focusBounds = e.Node.Bounds; focusBounds.Size = new Size(focusBounds.Width - 1, focusBounds.Height - 1); e.Graphics.DrawRectangle(focusPen, focusBounds); } }
希望本文所述对大家的C#程序设计有所帮助。
相关推荐
-
c# TreeView添加右键快键菜单有两种方法
一种就是使用TreeView的ContextMenuStrip属性,添加一个新ContextMenuStrip,这个方法非常的简答直接,缺点是右键菜单是整个控件响应的,也就是说即使没有右键选中节点也是会触发快捷菜单的显示 这种方法里获取哪一个的node选中是通过这个方法: 复制代码 代码如下: TreeNode curNode = this.trvFolder.GetNodeAt(e.X, e.Y) 另一种是创建ContextMenuStrip,并且使用TreeView的NodeMouseCli
-
C#中TreeView实现适合两级节点的选中节点方法
本文实例讲述了C#中TreeView实现适合两级节点的选中节点方法.分享给大家供大家参考.具体如下: class TreeViewChecked { bool isfirst = true; public TreeViewChecked(TreeView treeView) { treeView.AfterCheck += new TreeViewEventHandler(treeView_AfterCheck); treeView.AfterSelect += new TreeViewEven
-
C#搜索TreeView子节点,保留父节点的方法
本文实例讲述了C#搜索TreeView子节点,保留父节点的方法.分享给大家供大家参考.具体如下: C# 搜索TreeView子节点保留父节点: private void selectNodeByName(string name) { //重新生生成树, InitTvCatalog(); //删除节点 selectNode(tvCatalog.Nodes, name); } private void selectNode(TreeNodeCollection nodes, string name)
-
C#实现TreeView节点拖拽的方法
本文实例讲述了C#实现TreeView节点拖拽的方法.分享给大家供大家参考.具体如下: public Form1() { InitializeComponent(); treeView1.AllowDrop = true; treeView1.ItemDrag += new ItemDragEventHandler(treeView1_ItemDrag); treeView1.DragEnter += new DragEventHandler(treeView1_DragEnter); tree
-
C#TreeView 无限级别分类实现方法
做分类 经常会用到无限级别的分类 先介绍一下数据库的表结构 tid 类别编号 tname 类别名称 pid 父类编号 测试数据就不写了,大家可以自己插入一下试试 查询制定类别的 所有的子类 sql 的 代码 复制代码 代码如下: alter proc proc_chaxun(@tid int )asbegin with tt as ( select tid,tname,pid from dbo.t_goodsType where tid=@tid union a
-
c#的treeview绑定和获取值的方法
对Treelist 的一些功能的实现 1.数据绑定最基本的两个属性:KeyFieldName和ParentFieldName.(这两个属性一设置就基本上可以实现分级了) 可以通过代码的编写实现,也可以直接在属性里面直接实现. 这种数据库设计是比较常见的,一般数据满足树形关系就可以这样设计.绑定数据时,只需指定DataSource为对应 的DataTable,指定KeyFieldName为表主键字段,ParentFieldName为表指向主键的外键字段名. 复制代码 代码如下: private v
-
C# TreeView读取数据库简单实例
效果: 数据库: 思路: 利用for遍历,然后创建父节点,再根据父节点创建出子节点. 代码: 复制代码 代码如下: using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Data;using System.Collections;using System.Con
-
C#实现treeview绑定的方法
本文实例讲述了C#实现treeview绑定的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { bindTree(); } } private void bindTree() { ALIYUN_PIC.BLL.Folder_oper_BLL bll = new Folder_oper_BLL();
-
C#中TreeView节点的自定义绘制方法
本文实例讲述了C#中TreeView节点的自定义绘制方法.分享给大家供大家参考.具体如下: if ((e.State & TreeNodeStates.Selected) != 0) { //演示为绿底白字 e.Graphics.FillRectangle(Brushes.DeepSkyBlue, e.Node.Bounds); Font nodeFont = e.Node.NodeFont; if (nodeFont == null) nodeFont = ((TreeView)sender)
-
.NET 6中为record类型自定义Equals方法
目录 一.重写Equals方法 二.自定义Equals方法 三.结论 前言: record类型,这是一种新引用类型,而不是类或结构.record与类不同,区别在于record类型使用基于值的相等性. 例如: public record DemoRecord(int id); public class DemoClass { public DemoClass(int id) { this.id = id; } public int id { get;
-
Python OpenCV中的drawMatches()关键匹配绘制方法
目录 作用说明 函数原型 参数详解 结果 作用说明 该方法被用于绘制关键点的匹配情况.我们看到的许多匹配结果都是使用这一方法绘制的——一左一右两张图像,匹配的关键点之间用线条链接. 函数原型 cv.drawMatches( img1, keypoints1, img2, keypoints2, matches1to2, outImg[, matchColor[, singlePointColor[, matchesMask[, flags]]]]) -> outImg cv.drawMatche
-
c#在程序中定义和使用自定义事件方法总结
C#在程序中定义和使用自定义事件可以分为以下几个步骤: 步骤1:在类中定义事件 using System; public class TestClass { //.... public event EventHandler TestEvent } 步骤2:定义事件参数 注意:事件参数类TestEventArgs继承自System.EventArgs using System; public class TestEventArgs : EventArgs { public TestEventArg
-
Android中MPAndroidChart自定义绘制最高点标识的方法
前言 MPAndroidChart是一款基于Android的开源图表库,MPAndroidChart不仅可以在Android设备上绘制各种统计图表,而且可以对图表进行拖动和缩放操作,应用起来非常灵活.MPAndroidChart显得更为轻巧和简单,拥有常用的图表类型:线型图.饼图.柱状图和散点图. MPAndroidChart自定义绘制最高点标识 距离上次发布关于 MPAndroidChart 的文章已经过去一个多月了,项目中新增了一个需求,看起来很简单.就是在最高点绘制矩形框,标识最高点的数值
-
JQuery中DOM节点的操作与访问方法实例分析
本文实例讲述了JQuery中DOM节点的操作与访问方法.分享给大家供大家参考,具体如下: Jquery中DOM节点的操作 已有对象.append(要添加的对象) 作为最后一个子元素添加 要添加的对象.appendTo(已有对象) prepend()/prependTo() 作为第一个子元素添加 已有元素.before(要添加的元素)/after() 在对象前面/后面添加新的元素,可用逗号分割添加多个元素 要添加的元素.insertBefore(已有元素)/insertAfter() .empty
-
vue项目中使用bpmn为节点添加颜色的方法
内容概述 bpmn是比较方便的绘制流程图的插件,官方demo https://github.com/bpmn-io/bpmn-js-examples 本文主要包括vue项目中bpmn使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下. 前情提要 上文我们已经实现了在外部更改节点名.此时又有新玩法:在流程图中,根据节点状态为其标记不同颜色.例如:已完成:黄色,正在进行:绿色,本次我们通过两种方式来实现该需求.效果: 方式1:modeling.setColo
-
xpath的数据和节点类型以及XPath中节点匹配的基本方法
XPath数据类型 XPath可分为四种数据类型: 节点集(node-set) 节点集是通过路径匹配返回的符合条件的一组节点的集合.其它类型的数据不能转换为节点集. 布尔值(boolean) 由函数或布尔表达式返回的条件匹配值,与一般语言中的布尔值相同,有true和 false两个值.布尔值可以和数值类型.字符串类型相互转换. 字符串(string) 字符串即包含一系列字符的集合,XPath中提供了一系列的字符串函数.字符串可与数值类型.布尔值类型的数据相互转换. 数值(number) 在XPa
随机推荐
- Android 双击Back键退出应用的实现方法
- SQLite 入门教程四 增删改查 有讲究
- jquery实现的网页自动播放声音
- JAVA实现利用第三方平台发送短信验证码
- 微信小程序 点击控件后选中其它反选实例详解
- PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)
- 在windows下快速搭建web.py开发框架方法
- Python日志模块logging简介
- c++实现跳跃表(Skip List)的方法示例
- Android自定义日历Calender代码实现
- java编程中字节流转换成字符流的实现方法
- 数据库修改多对多的中间表的记录的技巧
- 一个支持ff的modaldialog的js代码
- 关于不同页面之间实现参数传递的几种方式讨论
- ASP.NET开发中经常用到10款工具软件介绍
- Base64在线编码解码实现代码 演示与下载
- Android多进程间采用AIDL方式进行通信
- vue计算属性computed的使用方法示例
- java实现简单TCP聊天程序
- vue实现滑动到底部加载更多效果