在WPF中ComboBox沒有SelectedText屬性。如何獲取WPF中的ComboBox.SelectedText
有沒有一種方法來實現相同的功能的TextBox SelectedText在WPF
在WPF中ComboBox沒有SelectedText屬性。如何獲取WPF中的ComboBox.SelectedText
有沒有一種方法來實現相同的功能的TextBox SelectedText在WPF
您可以通過使用可以訪問組合框的文本框:
var edit = (TextBox)myCombo.Template.FindName("PART_EditableTextBox", myCombo);
然後你就可以訪問該SelectedText財產TextBox:
var selectedText = edit.SelectedText;
因爲WPF是「看不見的」,所以你可以用任何你想要的方式顯示你的組合框項。可能有也可能沒有文本項目。
MyCombo.SelectedText
沒有任何意義,如果你是,例如,在那裏顯示圖標。
你想要的是ComboBox.SelectedItem
然後訪問你的對象。例如,如果您使用的是「People」對象的備份列表.... MyComboBox.SelectedItem.PersonName
通常,SelectedItem將數據綁定到您的對象模型或其他控件。
我在上面的帖子中得到了答案。我需要ComboBox中的SelectedText進一步處理它們,當ComboBox處於Edit模式時。 – 02Anant 2010-07-02 22:32:25
沒有任何屬性被稱爲selectedText,但您可以通過ComboBox.SelectedValue.ToString()
方法實現該屬性。這是因爲組合框的值默認爲Object類型,所以我們必須適當地對它進行類型轉換。
這不完全正確。如果您使用的是自定義項目模板,那麼您的代碼將與渲染的字符串不匹配。理想情況下,您應該如此,例如,可以將Employee對象放在列表中,而不是一堆自定義生成的字符串。 – Rich 2012-06-11 20:24:35
使用此:
ComboBoxItem Item = (ComboBoxItem) YourComboBoxName.SelectedValue;
那麼這個:
Console.WriteLine(Item.Content);
爲什麼不試試:
string selectedtext= Combobox.Text;
這對我的作品。
謝謝。它的工作完美 – 02Anant 2010-07-02 22:32:56
這隻適用於你的ComboBox已經顯示(即它是從它的ControlTemplate生成的),所以你不能做類似於創建一個ComboBox並立即專注於它的TextBox – hillin 2016-04-19 10:04:59