Dictionary<string, string> dic = new Dictionary<string, string>(); //用於存儲選擇內容
/// <summary>
/// 獲取選中的節點
/// </summary>
/// <param name="tree"></param>
private void FindSelectChecked(DevExpress.XtraTreeList.TreeList tree, bool dataStatus)
{
this.dic.Clear();
if (tree.Nodes.Count > 0)
{
foreach (TreeListNode root in tree.Nodes)
{
GetCheckedKeyID(root, dataStatus);
}
}
}
/// <summary>
/// 獲取選擇狀態的數據
/// </summary>
/// <param name="parentNode">父級節點</param>
private void GetCheckedKeyID(TreeListNode parentNode, bool dataStatus)
{
if (parentNode.Nodes.Count == 0) return;//遞歸終止
foreach (TreeListNode node in parentNode.Nodes)
{
if (dataStatus)
{
node.Checked = false;
DataRowView drRow = tvArea.GetDataRecordByNode(node) as DataRowView;
foreach (DataRow row in dtPrecinct.Rows)
{
if (row["DISTRICTS_CODE"].ToString().Trim() == drRow["DISTRICTS_CODE"].ToString().Trim())
{
node.Checked = true;
}
}
}
else
{
if (node.CheckState == CheckState.Checked)
{
DataRowView drv = tvArea.GetDataRecordByNode(node) as DataRowView;
if (drv != null)
{
dic.Add((string)drv["DISTRICTS_CODE"], (string)drv["DISTRICTS_NAME"]);
}
}
}
GetCheckedKeyID(node, dataStatus);
}
}