社区
组件/控件开发
帖子详情
C#如何让dataGridView实现树形分组结构
yxm987528
2014-08-15 11:33:34
需要做一个树形控件和dataGridVie相结合的控件,在主界面上显示,如图
...全文
11169
12
打赏
收藏
C#如何让dataGridView实现树形分组结构
需要做一个树形控件和dataGridVie相结合的控件,在主界面上显示,如图
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
MR_HJ
2016-08-16
打赏
举报
回复
楼主求分享!
2009菜鸟
2015-08-21
打赏
举报
回复
引用 8 楼 yxm987528 的回复:
问题已解决,找到一个TreeDataGridView.dll。
分享下么
chen_whutgis
2015-04-10
打赏
举报
回复
没有开源啊。
Allan_923
2015-01-02
打赏
举报
回复
引用 8 楼 yxm987528 的回复:
问题已解决,找到一个TreeDataGridView.dll。
引用 8 楼 yxm987528 的回复:
问题已解决,找到一个TreeDataGridView.dll。
你好你是在哪找到的呢?
yxm987528
2014-09-16
打赏
举报
回复
问题已解决,找到一个TreeDataGridView.dll。
nii_ma2859103466
2014-08-18
打赏
举报
回复
把DataGridView中数据放到树形控件TreeView中显示 //窗体加载时,显示原有的数据 private void Form1_Load(object sender,EventArgs e) { string P_Connection = string.Format(//创建数据库连接字符串 "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb;User Id=Admin"); OleDbDataAdapter P_OLeDbDataAdapter = new OleDbDataAdapter( "select au_id as 用户编号,au_lname as 用户名,phone as 联系电话 from authors", P_Connection); DataSet ds = new DataSet(); P_OLeDbDataAdapter.Fill(ds,"UserInfo"); dataGridView1.DataSource = ds.Tables["UserInfo"].DefaultView; TreeNode treeNode = new TreeNode("用户信息",0,0); treeView1.Nodes.Add(treeNode); //默认情况下追加节点 追加节点ToolStripMenuItem.Checked = true; } //DataGridView的按下鼠标事件 private void dataGridView1_MouseDown(object sender,MouseEventArgs e) { if(dataGridView1.SelectedCells.Count != 0) { //定义一个二维数组,数组中的每一行代表DataGridView中的一条记录 recordInfo = new string[dataGridView1.Rows.Count,dataGridView1.Columns.Count]; //当按下鼠标左键时,首先获取选定行,记录每一行对应的信息 for(int i = 0; i < dataGridView1.Rows.Count; i++) { if(dataGridView1.Rows[i].Selected) { for(int j = 0; j < dataGridView1.Columns.Count; j++) { recordInfo[i,j] = dataGridView1.Rows[i].Cells[j].Value.ToString(); } } } } } //当鼠标进入TreeView控件时,触发的操作 private void treeView1_MouseEnter(object sender,EventArgs e) { if(追加节点ToolStripMenuItem.Checked == true) { #region 代码区域 if(recordInfo != null && recordInfo.Length != 0) { //用双重for循环遍历数组recordInfo中的内容 for(int i = 0; i < recordInfo.GetLength(0); i++) { for(int j = 0; j < recordInfo.GetLength(1); j++) { //判断数组中的值是否为空 if(recordInfo[i,j] != null) { if(j == 0) { //向TreeView中加入节点 TreeNode Node1 = new TreeNode(recordInfo[i,j].ToString()); treeView1.SelectedNode.Nodes.Add(Node1); treeView1.SelectedNode = Node1; } else { //添加子级节点下的子节点 TreeNode Node2 = new TreeNode(recordInfo[i,j].ToString()); treeView1.SelectedNode.Nodes.Add(Node2); } } } treeView1.SelectedNode = treeView1.Nodes[0]; treeView1.ExpandAll(); } //清空recordInfo中的记录 for(int m = 0; m < recordInfo.GetLength(0); m++) { for(int n = 0; n < recordInfo.GetLength(1); n++) { recordInfo[m,n] = null; } } }//CodeGo.net/ #endregion } if(清空内容ToolStripMenuItem.Checked == true) { if(treeView1.SelectedNode.Nodes.Count != 0) { treeView1.SelectedNode.Remove(); TreeNode treeNode = new TreeNode("用户信息",0,0); treeView1.Nodes.Add(treeNode); treeView1.SelectedNode = treeNode; #region 代码区域 if(recordInfo != null && recordInfo.Length != 0) { //用双重for循环遍历数组recordInfo中的内容 for(int i = 0; i < recordInfo.GetLength(0); i++) { for(int j = 0; j < recordInfo.GetLength(1); j++) { //判断数组中的值是否为空 if(recordInfo[i,j] != null) { if(j == 0) { //向TreeView中加入节点 TreeNode Node1 = new TreeNode(recordInfo[i,j].ToString()); treeView1.SelectedNode.Nodes.Add(Node1); treeView1.SelectedNode = Node1; } else { //添加子级节点下的子节点 TreeNode Node2 = new TreeNode(recordInfo[i,j].ToString()); treeView1.SelectedNode.Nodes.Add(Node2); } } } treeView1.SelectedNode = treeView1.Nodes[0]; treeView1.ExpandAll(); } //清空recordInfo中的记录 for(int m = 0; m < recordInfo.GetLength(0); m++) { for(int n = 0; n < recordInfo.GetLength(1); n++) { recordInfo[m,n] = null; } } } #endregion 追加节点ToolStripMenuItem.Checked = true; 清空内容ToolStripMenuItem.Checked = false; } } }
lanweiqiang
2014-08-18
打赏
举报
回复
呵呵,好熟悉啊,是电力终端服务主站吧?
yxm987528
2014-08-15
打赏
举报
回复
这段我看过,好像是ASP的,在C#上好像实现不了
yxm987528
2014-08-15
打赏
举报
回复
这段我看过,好像是ASP的,在C#上好像实现不了
bdmh
2014-08-15
打赏
举报
回复
http://www.cnblogs.com/Fooo/archive/2008/11/26/1341429.html
或者 用dev组件中的表格
wuyq11
2014-08-15
打赏
举报
回复
http://bbs.csdn.net/topics/370179201
组件/控件开发
8,833
社区成员
7,151
社区内容
发帖
与我相关
我的任务
组件/控件开发
.NET技术 组件/控件开发
复制链接
扫一扫
分享
社区描述
.NET技术 组件/控件开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章