Я пытаюсь установить выбранный узел после очистки и пополнения моего дерева. Вот код, который я попробовал:Не удается установить свойство TreeView.SelectedNode
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
свойство это нуль. Спасибо за помощь!
Почему вы уверены, что есть выбранный узел? – TaW
Да, но по какой-то причине свойство Handle и FullPath выбрасывало исключение во время просмотра в отладчике. –
Да, но мне пришлось сделать обходной путь. (Извините за то, что вы не писали о решении, но я вроде забыл о том, что я спросил его здесь.) –