public void BindTree()
{
DataSet ds = new DataSet();
SqlServerDAL.MenuTree MT=new SqlServerDAL.MenuTree();
ds=MT.GetCategory();
treeview_hr.ImageList = imgtreeview;
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
//顶部菜单
ToolStripMenuItem item= new ToolStripMenuItem(ds.Tables[0].Rows[i]["name"].ToString().Trim());
menuStrip_hr.Items.Add(item);
//树形菜单
DataSet Cds = MT.GetcData(int.Parse(ds.Tables[0].Rows[i]["cID"].ToString()));
TreeNode[] ChildNodes = new TreeNode[Cds.Tables[0].Rows.Count];
for (int j = 0; j < Cds.Tables[0].Rows.Count; j++)
{
//树形二级菜单
ChildNodes[j] = new TreeNode();
ChildNodes[j].Text = Cds.Tables[0].Rows[j]["title"].ToString().Trim ();
ChildNodes[j].Tag = Cds.Tables[0].Rows[j]["dataID"].ToString().Trim ();
ChildNodes[j].ImageIndex = 1;
//顶部二级菜单
ToolStripMenuItem childitem = new ToolStripMenuItem(Cds.Tables[0].Rows[j]["title"].ToString().Trim());
item.DropDownItems.Add(childitem);
childitem.Click += new EventHandler(childitem_Click);
}
TreeNode node = new TreeNode(ds.Tables[0].Rows[i]["name"].ToString().Trim (), ChildNodes);
treeview_hr.Nodes.Add(node);
}
}
private void childitem_Click(object sender, EventArgs e)
{
HR.ModuleClass.MyModule mymodule = new HR.ModuleClass.MyModule();
mymodule.Show_Form(((ToolStripMenuItem)sender).Text);
}
private void frm_main_Load(object sender, EventArgs e)
{
this.toolStripStatuslbldate.Text="当前系统日期: "+ DateTime .Now.ToShortDateString();
this.toolStripStatuslbluser.Text = "当前用户: "+Utility.userloginfor.username.ToString();
}
private void treeview_hr_AfterSelect(object sender, TreeViewEventArgs e)
{
TreeNode node = e.Node;
if (node.Level == 1) //子节点
{
HR.ModuleClass.MyModule mymodule = new HR.ModuleClass.MyModule();
mymodule.Show_Form(node.Text.Trim());
treeview_hr.SelectedImageIndex = 1;
}
else
{
treeview_hr.SelectedImageIndex = 0;
}
首先需要为窗体添加ImageList,然后把所有需要显示的图标加载其中。
然后用此去初始化treeview的ImageList属性
注意:ImageList也是个控件。从工具箱找到ImageList 拖到你的TreeView上 然后就可以设置了