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#