2010-02-17 121 views
3

使用this question (Inline editing TextBlock in a ListBox with DataTemplate (WPF)我現在有一個ListBox可以雙擊來編輯它中的項目。我現在想要的是在窗體上有一個Button,單擊它時會將一個新項目添加到ListBox(這很容易),但是然後將ListBoxItem更改爲editmode,以便用戶可以立即輸入該值。您如何選擇合適的ListBoxItem,然後在其中找到TextBlockTextBox並使用SelectedIndex更改它們的可見性?wpf當單擊按鈕時,在列表框中編輯項目

回答

0

我知道這是一個非常晚的答案,但你有沒有考慮過將BeginEditEndEdit方法添加到你的項目?然後,你可以這樣做:

CustomListBoxItem foo = new CustomListBoxItem(); 
customListBoxInstance.Add(foo); 
foo.BeginEdit(); 

我不得不這樣做與將要創建的是需要幾個我自定義控制,並立即進入編輯模式。你最終的東西,如:

private void TextBlock1_DoubleClick(object sender, RoutedEventArgs e) 
{ 
    BeginEdit(); 
} 

public void BeginEdit() 
{ 
    // Code to put the item into edit mode. 
} 

我需要看到更多的代碼,以提供更準確的答案,但是這真的很好在我的經驗用於控制控件是否處於編輯來自該控制範圍之外的模式。

相關問題