当前位置:编程学习 > C#/ASP.NET >>

C# Form端 在Load事件里面 添加Delegate修改当前画面的控件

不知道该怎么弄了,invoke 什么的 晕晕乎乎的 大神给讲讲吧 
       private void frmDeptLevelSet_Load(object sender, EventArgs e)
        {
            try
            {
                Thread t1 = new Thread(new ThreadStart(new PMPointPlanList.Program.SetTreeNode(BuitTree)));
                t1.IsBackground = true;
                t1.Start();
             }
        }        

        private void BuitTree()
        {   
                 // Treeの構築

            if (dsListXML.Tables.Count > 0)
            {
                strXML = dsListXML.GetXml();
            }
            else
            {
                strXML = "";
            }
            Dictionary<string, string> paras = new Dictionary<string, string>();
            paras.Add("xmlFileList", strXML);
            DataSet ds = PMBusiness.getDeptListInfo(paras);
            dsForUse = ds.Copy();
                DataRow[] dr = ds.Tables[0].Select("ParentNodeCD = '9999'");
                int intCount = dr.Length;
                for (int i = 0; i < intCount; i++)
                {
                    string strParentNodeID = dr[i][0].ToString();
                    string strParentNodeName = dr[i][1].ToString();
                    this.tvwGoodsInfo.Nodes.Add(strParentNodeID, strParentNodeName);
                    AddTree(this.tvwGoodsInfo.Nodes[i], ds);
                    bool blnRootNode = true;
                    foreach (TreeNode childnode in this.tvwGoodsInfo.Nodes[i].Nodes)
                    {
                        if (!childnode.Checked)
                        {
                            blnRootNode = false;
                            break;
                        }
                    }
                }
        } delegate c# 控件 thread --------------------编程问答-------------------- 控件的Invoke方法也就是让UI线程去操作这个控件了,因为控件的操作只能由创建它的线程(即UI线程)进行操作
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,