debExpress 多列treelist示例是這個:
TreeListMainDemo
Components\WinForms\XtraTreeList
樹好看,但難操作。
比較難辦的一個事情就是如何找到一行。
很快,找到了幾個函數,最重要的,就是這個:
FindNodeByKeyID
原型如下:
DX2011.2.5_src\Sources\DevExpress.XtraTreeList\DevExpress.XtraTreeList\TreeList.cs
public TreeListNode FindNodeByKeyID(object keyID) {
return FindNodeByServiceTreeFieldValue(KeyFieldName, keyID);
}
但使用起來,卻不對,說ID這個列,是不正确的。
我想起來,的确這個列,被我從界面上删除了。
是以,我把這列加回來。
好了:
DevExpress.XtraTreeList.Nodes.TreeListNode curNode = treeList1.FindNodeByKeyID("1.1.1");
Debug.Print(curNode.Id.ToString());
curNode.SetValue("Percents", "70");
然後,把這一列 隐藏了。
======================
xml内容片段
<Table>
<ID>1.1.1</ID>
<ParentId>1.1</ParentId>
<TaskName>我的操作件</TaskName>
<MachineName>PdFileCompare::CompareMinRRU</MachineName>
<Descs>root</Descs>
<Percents>0</Percents>
<Status>NoStart</Status>
<StartTime>2010-12-30T12:45:37</StartTime>
<EndTime>2010-12-30T12:45:37</EndTime>
</Table>
操作後:
進度條發生了改變。
進而完成了定位和設定值的過程。
另外,中間我還犯了一次傻,以為FieldName區分大小,事實證明,不區分。
《完》