我工作在C#中的表單應用程序,包括在它的TreeView索引。我想要做的是將面板連接到每個節點,因此無論何時用戶單擊節點,面板都將根據所選節點進行更新。
我面臨的問題是,當我選擇一個節點,該應用什麼也不做,但是當我選擇另一個節點,那麼應用程序顯示與先前選擇的節點的內容。意味着應用程序始終獲取與上一個選定節點相關的內容,而不是當前節點。例如,如果我選擇「文本」節點,標籤將不顯示任何內容,之後如果我選擇其他節點,如「外觀」,則標籤將顯示最後選擇的節點「文本」。如何從樹視圖當前選擇的節點在C#
這裏以下是我的形式,它包含TreeView的圖像。
出於測試目的,我只是存儲選擇的節點的值在我的標籤的文本 下面的代碼。
public partial class TextEditor_Preferences : Form
{
public TextEditor_Preferences()
{
InitializeComponent();
}
List<Panel> myPanels = new List<Panel>(); //Ignore this line of code !
private void SideBar_MouseClick(object sender, MouseEventArgs e)
{
label1.Text = SideBar.SelectedNode.ToString();
}
}
難道沒有人會給我一種方法嗎?
如果我錯過了某些東西或問題無效,請明確告訴我。由於
MouseClick事件可能發生在樹中的選擇被更改之前,因此它在點擊時仍然具有標記爲「已選」的舊值。嘗試註冊到另一個事件,也許是SelectionChanged或類似的東西。 –