public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
TreeNode node = new TreeNode("新增节点");
TreeNode nodeselect = this.treeView1.SelectedNode;
nodeselect.Nodes.Add(node);
}
private void button2_Click(object sender, EventArgs e)
{
foreach (TreeNode node1 in this.treeView1.Nodes)
{
if (node1.Checked)
{
//删除数据
string id = node1.Tag.ToString();
this.Delete(id);
}
}
this.BindTree();
}
private void Delete(string id )
{
// string id =
this.treeView1.SelectedNode.Tag.ToString();
using (SqlConnection conn = new SqlConnection
("server=.;database=Test;uid=sa;pwd=123"))
{
try
{
if (conn.State == ConnectionState.Closed)
conn.Open();
string sql = "delete from usertypes where
id=" + id;
SqlCommand comm = new SqlCommand(sql, conn);
comm.ExecuteNonQuery();
conn.Close();
}
catch
{
}
finally
{
if (conn.State == ConnectionState.Open)
conn.Close();
}
}
}
private void button3_Click(object sender, EventArgs e)
{
TreeNode node = new TreeNode("新增节点");
node.ImageIndex = 2;
node.SelectedImageIndex = 2;
this.treeView1.Nodes.Add(node);
}
//用递归获取树的全部节点
private void GetAllTreeNodes()
{
TreeNode node;
for (int i = 0; i < this.treeView1.Nodes.Count; i++)
{
node=this.treeView1.Nodes[i];
MessageBox.Show(node.Text);
GetNodes(node);
}
}
private void GetNodes(TreeNode node)
{
TreeNode node1;
for (int i = 0; i < node.Nodes.Count; i++)
{
node1 = node.Nodes[i];
MessageBox.Show(node1.Text);
GetNodes(node1);
}
}
private void button4_Click(object sender, EventArgs e)
{
this.GetAllTreeNodes();
}
//绑定树
private void BindTree()
{
//清空节点
this.treeView1.Nodes.Clear();
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection
("server=.;database=Test;uid=sa;pwd=123"))
{
try
{
if (conn.State == ConnectionState.Closed)
conn.Open();
string sql = "select * from usertypes ";
SqlDataAdapter da = new SqlDataAdapter(sql,
conn);
da.Fill(ds);
conn.Close();
}
catch
{
}
finally
{
if(conn.State==ConnectionState.Open)
conn.Close();
}
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
//添加节点
TreeNode node = new TreeNode();
//设置节点的文本
node.Text = ds.Tables[0].Rows[i]
["name"].ToString();
//保存id值
node.Tag = ds.Tables[0].Rows[i]
["id"].ToString();
this.treeView1.Nodes.Add(node);
}
}
}
private void Form1_Load(object sender, EventArgs e)
{
this.BindTree();
}
}
=========================TreeView_ListView
左边TreeView操作右边ListView变化
namespace nWin07_13
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Treeview();
}
private void Treeview()
{
string Path1 = @"F:/u盘备份.11.23";
string[] n = Directory.GetDirectories(Path1);
if (Directory.Exists(Path1))
{
foreach (string n1 in n)
{
DirectoryInfo n2 = new DirectoryInfo(n1);
TreeNode node =new TreeNode();
node.SelectedImageIndex = 1;
node.Tag = n2.FullName;
node.Text = n2.Name;
this.treeView1.Nodes.Add(node);
Getn(node, n1);
}
}
}
private void Getn(TreeNode node1, string Path1)
{
string[] n = Directory.GetDirectories(Path1);
if (Directory.Exists(Path1))
{
foreach (string n1 in n)
{
DirectoryInfo n2 = new DirectoryInfo(n1);
TreeNode node =new TreeNode();
node.SelectedImageIndex = 1;
node.Tag = n2.FullName;
node.Text = n2.Name;
node1.Nodes.Add(node);
Getn(node, n1);
}
}
}
private void Listview(string Path1)
{
if (Directory.Exists(Path1))
{
DirectoryInfo n2 = new DirectoryInfo(Path1);
FileInfo[] f = n2.GetFiles();
foreach (FileInfo f1 in f)
{
ListViewItem i = new ListViewItem(f1.Name,
0);
i.SubItems.Add(f1.Length.ToString());
listView1.Items.Add(i);
}
}
}
private void treeView1_AfterSelect(object sender,
TreeViewEventArgs e)
{
this.listView1.Items.Clear();
string Path1 =
this.treeView1.SelectedNode.Tag.ToString();
this.Listview(Path1);
}
=============================TreeView
TreeView简单例子
添加一个TreeView1控件
.cs
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnTreeNode_Click(object sender, EventArgs e)
{
this.AddTreeNode();
}
private void AddTreeNode()
{
TreeNode node = new TreeNode("新节点");
this.treeView1.Nodes.Add(node);
}
private void btnSubNode_Click(object sender, EventArgs e)
{
this.SubNode();
}
private void SubNode()
{
bool b=this.If_selectNode();
if (b == true)
{
return;
}
else
{
this.treeView1.SelectedNode.Expand();
TreeNode node = new TreeNode("新子节点");
this.treeView1.SelectedNode.Nodes.Add(node);//当前选择节点的子节点集合
}
}
private bool If_selectNode()
{
bool b = false;
if (this.treeView1.SelectedNode==null)
{
MessageBox.Show("没有选择一个节点", "提示信息", MessageBoxButtons.OK,
MessageBoxIcon.Information);
b = true;
}
return b;
}
Program.cs
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}