/// <include file='doc\ObjectSelectorEditor.uex' path='docs/doc[@for="ObjectSelectorEditor.Selector.SetSelection"]/*' />
/// <devdoc>
/// <para>[To be supplied.]</para>
/// </devdoc>
public bool SetSelection(object value, System.Windows.Forms.TreeNodeCollection nodes)
{
TreeNode[] treeNodes;
if (nodes == null)
{
treeNodes = new TreeNode[this.Nodes.Count];
this.Nodes.CopyTo(treeNodes, 0);
}
else
{
treeNodes = new TreeNode[nodes.Count];
nodes.CopyTo(treeNodes, 0);
}
int len = treeNodes.Length;
if (len == 0)
{
return(false);
}
for (int i = 0; i < len; i++)
{
if (((SelectorNode)treeNodes[i]).value == value)
{
SelectedNode = treeNodes[i];
return(true);
}
if ((treeNodes[i].Nodes != null) && (treeNodes[i].Nodes.Count != 0))
{
treeNodes[i].Expand();
if (SetSelection(value, treeNodes[i].Nodes))
{
return(true);
}
treeNodes[i].Collapse();
}
}
return(false);
}