自定义TreeNode属性
2008-09-18 15:22
141 查看
一、目的:自定义TreeNode属性,让控件可以存储更多属性。有利于开发
二、方法:
public class GroupTreeNode : TreeNode
{
private IPAddress ip;
private HostStatus status;
public HostStatus Status
{
set { status = value; }
get { return status; }
}
public IPAddress IP
{
set { ip = value; }
get { return ip; }
}
public GroupTreeNode()
: base()
{
}
public GroupTreeNode(string text, int imageIndex, int selectedImageIndex, IPAddress address)
: base(text, imageIndex, selectedImageIndex)
{
this.ip = address;
}
}
三、应用
Code
TreeNode rootNode;
TreeNode channelNode;
GroupTreeNode groupTreeNode;
string sql = "select sysname from sysconfig ";
CMySql mydb = new CMySql();
DataTable dt = new DataTable();
dt = mydb.SelectDt(sql);
foreach (DataRow row in dt.Rows)
{
foreach (DataColumn column in dt.Columns)
{
string mss = String.Format("{0}", row[column]);
rootNode = treeVideo_server.AddRoot(mss, null);
string sql2 = "select servername,ipaddress from serverconfig where sysname='" + mss + "'";
CMySql db2 = new CMySql();
DataTable dt2 = new DataTable();
dt2 = db2.SelectDt(sql2);
foreach (DataRow row2 in dt2.Rows)
{
string name = row2["servername"].ToString();
IPAddress ip = IPAddress.Parse(row2["ipaddress"].ToString());
groupTreeNode = treeVideo_server.AddGroup(name, rootNode, ip);//带有IP地址属性
string sql3 = "select channelname from channelconfig where servername='" + name + "'";
CMySql db3 = new CMySql();
DataTable dt3 = db3.SelectDt(sql3);
foreach (DataRow row3 in dt3.Rows)
{
foreach (DataColumn column3 in dt3.Columns)
{
string mss3 = String.Format("{0}", row3[column3]);
channelNode = treeVideo_server.AddChannel(mss3, groupTreeNode);
}
}
}
}
四、其他
循环访问 TreeView 控件的所有节点
二、方法:
public class GroupTreeNode : TreeNode
{
private IPAddress ip;
private HostStatus status;
public HostStatus Status
{
set { status = value; }
get { return status; }
}
public IPAddress IP
{
set { ip = value; }
get { return ip; }
}
public GroupTreeNode()
: base()
{
}
public GroupTreeNode(string text, int imageIndex, int selectedImageIndex, IPAddress address)
: base(text, imageIndex, selectedImageIndex)
{
this.ip = address;
}
}
三、应用
Code
TreeNode rootNode;
TreeNode channelNode;
GroupTreeNode groupTreeNode;
string sql = "select sysname from sysconfig ";
CMySql mydb = new CMySql();
DataTable dt = new DataTable();
dt = mydb.SelectDt(sql);
foreach (DataRow row in dt.Rows)
{
foreach (DataColumn column in dt.Columns)
{
string mss = String.Format("{0}", row[column]);
rootNode = treeVideo_server.AddRoot(mss, null);
string sql2 = "select servername,ipaddress from serverconfig where sysname='" + mss + "'";
CMySql db2 = new CMySql();
DataTable dt2 = new DataTable();
dt2 = db2.SelectDt(sql2);
foreach (DataRow row2 in dt2.Rows)
{
string name = row2["servername"].ToString();
IPAddress ip = IPAddress.Parse(row2["ipaddress"].ToString());
groupTreeNode = treeVideo_server.AddGroup(name, rootNode, ip);//带有IP地址属性
string sql3 = "select channelname from channelconfig where servername='" + name + "'";
CMySql db3 = new CMySql();
DataTable dt3 = db3.SelectDt(sql3);
foreach (DataRow row3 in dt3.Rows)
{
foreach (DataColumn column3 in dt3.Columns)
{
string mss3 = String.Format("{0}", row3[column3]);
channelNode = treeVideo_server.AddChannel(mss3, groupTreeNode);
}
}
}
}
四、其他
循环访问 TreeView 控件的所有节点
private void PrintRecursive(TreeNode treeNode) { // Print the node. System.Diagnostics.Debug.WriteLine(treeNode.Text); MessageBox.Show(treeNode.Text); // Print each node recursively. foreach (TreeNode tn in treeNode.Nodes) { PrintRecursive(tn); } } // Call the procedure using the TreeView. private void CallRecursive(TreeView treeView) { // Print each node recursively. TreeNodeCollection nodes = treeView.Nodes; foreach (TreeNode n in nodes) { PrintRecursive(n); } }
相关文章推荐
- WINForM学习 控件的通用属性
- javascript HTMLElement IE隐藏了这个属性
- android:windowSoftInputMode属性使用
- asp.net 服务器控件使用HTML(input)元素属性
- Android中RelativeLayout各个属性的含义
- Android自定义组件的属性
- javascript之自定义属性及索引值、函数
- 微信小程序自定义属性
- (csdn论坛心得)Request的某些细节和Checkbox的value属性
- display属性的一点理解
- AJAX核心XMLHttpRequest的属性和方法介绍_javascript
- Android怎样使用系统属性
- AxureRP7.0教程 AxureRP7.0页面函数 页面属性 Page Functions
- C++编译器对属性和方法的处理机制
- 《JavaScript DOM编程艺术》学习笔记之常用DOM方法属性
- fis3全局属性
- 浅谈CSS的display属性
- HTML5中indeterminate属性
- 在ArcGIS中为Shapefile属性表增加字段