求帶有新增/刪除的TreeView控件(C#)源易做图
1.TreeView控件中帶有新增/刪除節點功能;2.最好有C#源代易做图.
大俠們,快幫幫忙,急急,分不夠還可以加!提前謝了! --------------------编程问答-------------------- 增加选中节点的子节点。
treeView2.SelectedNode.Nodes.Add(...);
删除选中节点
treeView2.SelectedNode.Remove(); --------------------编程问答-------------------- 是當用戶鼠標右擊TreeView控件時彈出新增或刪除的功能菜單,
也就是說控件中已經繼承了該新增或刪除的功能. --------------------编程问答-------------------- 你若想动态显示、即时刷新那可以参照
using System.Windows.Forms;
using System.IO;
public MainForm()
{
InitializeComponent();
PopulateTreeView();
}
private void PopulateTreeView()
{
TreeNode rootNode;
DirectoryInfo info = new DirectoryInfo(@"C:\Documents and Settings");
if (info.Exists)
{
rootNode = new TreeNode(info.Name);
rootNode.Tag = info;
GetDirectories(info.GetDirectories(), rootNode);
treeView1.Nodes.Add(rootNode);
}
}
private void GetDirectories(DirectoryInfo[] subDirs,
TreeNode nodeToAddTo)
{
TreeNode aNode;
DirectoryInfo[] subSubDirs;
foreach (DirectoryInfo subDir in subDirs)
{
aNode = new TreeNode(subDir.Name, 0, 0);
aNode.Tag = subDir;
aNode.ImageKey = "folder";
subSubDirs = subDir.GetDirectories();
if (subSubDirs.Length != 0)
{
GetDirectories(subSubDirs, aNode);
}
nodeToAddTo.Nodes.Add(aNode);
}
}
void treeView1_NodeMouseClick(object sender,
TreeNodeMouseClickEventArgs e)
{
TreeNode newSelected = e.Node;
listView1.Items.Clear();
DirectoryInfo nodeDirInfo = (DirectoryInfo)newSelected.Tag;
ListViewItem.ListViewSubItem[] subItems;
ListViewItem item = null;
foreach (DirectoryInfo dir in nodeDirInfo.GetDirectories())
{
item = new ListViewItem(dir.Name, 0);
subItems = new ListViewItem.ListViewSubItem[]
{new ListViewItem.ListViewSubItem(item, "Directory"),
new ListViewItem.ListViewSubItem(item,
dir.LastAccessTime.ToShortDateString())};
item.SubItems.AddRange(subItems);
listView1.Items.Add(item);
}
foreach (FileInfo file in nodeDirInfo.GetFiles())
{
item = new ListViewItem(file.Name, 1);
subItems = new ListViewItem.ListViewSubItem[]
{ new ListViewItem.ListViewSubItem(item, "File"),
new ListViewItem.ListViewSubItem(item,
file.LastAccessTime.ToShortDateString())};
item.SubItems.AddRange(subItems);
listView1.Items.Add(item);
}
listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
}
而如果是说能通过附操作,那是控件属性
代码操作是
增加选中节点的子节点。
treeView2.SelectedNode.Nodes.Add(...);
删除选中节点
treeView2.SelectedNode.Remove();
你可以看看属性的设置-ContextMenuStrip,作为鼠标操作节点提示还有个属性-HotTracking,祝你好运,我C#用的少。。。 --------------------编程问答-------------------- 楼上很全了,不多讲了。路过。
补充:.NET技术 , C#