/// <summary>
/// 選擇樹的一個節點
/// </summary>
/// <param name="itemsControl">樹控件名稱</param>
/// <param name="HeaderCl">根節點</param>
/// <param name="ChildrenCl">想要選中的節點數據</param>
/// <returns></returns>
private bool SelectItems(ItemsControl itemsControl, PP_OrgInfo HeaderCl,PP_OrgInfo ChildrenCl)
{
TreeViewItem container = itemsControl.ItemContainerGenerator.ContainerFromItem(HeaderCl) as TreeViewItem;
if (container != null)
{
container.IsExpanded = true;
bool isExists = false;
if (container.ItemContainerGenerator.Status != System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
container.UpdateLayout();
}
if ((container.Header as PP_OrgInfo).Children != null)
{
for (int i = (container.Header as PP_OrgInfo).Children.Count - 1;i>=0 ; i--)
{
if (SelectItems(container, (container.Header as PP_OrgInfo).Children[i], ChildrenCl))
{
isExists = true;
break;
}
}
}
if (!isExists)
{
if ((container.Header as PP_OrgInfo) == ChildrenCl)
{
container.IsSelected = true;
container.BringIntoView();//滾動條滾動到選中的子元素
return true;
}
else
return false;
}
else
return false;
}
else
{
return false;
}
}
WPF後端選中treeview節點
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.