/// <summary>
///
/// </summary>
/// <param name="control">TreeView控件</param>
/// <param name="expandNode">true:展开 false:收缩</param>
private void SetNodeExpandedState(ItemsControl control, bool expandNode)
{
try
{
if (control != null)
{
foreach (object item in control.Items)
{
TreeViewItem treeItem = control.ItemContainerGenerator.ContainerFromItem(item) as TreeViewItem;
if (treeItem != null && treeItem.HasItems)
{
treeItem.IsExpanded = expandNode;
if (treeItem.ItemContainerGenerator.Status != System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
treeItem.UpdateLayout();
}
SetNodeExpandedState(treeItem as ItemsControl, expandNode);
}
}
}
}
catch (Exception ex)
{
Eastups.Utility.Logger.Write(LogType.Error, ex.Message.ToString());
}
}