【发布时间】:2016-02-16 16:17:42
【问题描述】:
我试图在清理和重新填充我的树视图后设置选定的节点。这是我尝试过的代码:
private TreeNode selectednode;
private void ElementTextChanged(object sender, EventArgs e)//saves changes to the XElements displayed in the textboxes
{
BusinessLayer.ElementName = (sender as TextBox).Tag.ToString();
string Type = (sender as TextBox).Name;
string Value = (sender as TextBox).Text;
if (TView_.SelectedNode!=null)
{
selectednode = TView_.SelectedNode;
}
string NodePath = TView_.SelectedNode.FullPath.Replace("\\", "/");
Telementchange.Stop();
Telementchange.Interval = 2000;
Telementchange.Tick += (object _sender, EventArgs _e) => {
if (Type=="Value")
{
BusinessLayer.ChangeElementValue(NodePath,Value);//nembiztos hogy így kéne ezt meghívni
}
else
{
BusinessLayer.ChangeElementName(NodePath, Value);
BusinessLayer.ElementName = Value;
}
FillTree(BusinessLayer.Doc);
TView_.SelectedNode = selectednode; //nemműködikezaszar!!!!!
TView_.Select();
Telementchange.Stop();
};
Telementchange.Start();
}
在我设置TView_.SelectedNode 属性后的某个季节,它为空。
感谢您的帮助!
【问题讨论】:
-
为什么确定有选中的节点?
-
是的,但由于某种原因,在调试器中查看时,Handle 和 FullPath 属性引发了异常。
-
是的,但我必须想办法解决。 (很抱歉没有写出解决方案,但我有点忘了我在这里问过。)