1
我會谷歌這個,但我不知道如何用它來做一個搜索。我的問題非常簡單:我正在移植使用Access編寫的應用程序,並且其中一個表單是組合框。當您打開下拉菜單時,它會顯示兩列信息:左側爲縮寫,右側爲全名。當您選擇一個時,組合框中選定的選項(下拉框關閉)僅顯示縮寫。任何想法如何在WPF中實現這一點?如何讓組合框下拉列表顯示兩列,但選擇只顯示一列?
我會谷歌這個,但我不知道如何用它來做一個搜索。我的問題非常簡單:我正在移植使用Access編寫的應用程序,並且其中一個表單是組合框。當您打開下拉菜單時,它會顯示兩列信息:左側爲縮寫,右側爲全名。當您選擇一個時,組合框中選定的選項(下拉框關閉)僅顯示縮寫。任何想法如何在WPF中實現這一點?如何讓組合框下拉列表顯示兩列,但選擇只顯示一列?
下面是在XAML中執行此操作的另一種方法。重要的部分是TextSearch.TextPath。這將搜索具有指定名稱的對象。在這種情況下,它是一個名爲「Foo」的字符串。
<ComboBox Name="cmbBox" ItemsSource="{Binding Test}" Height="25" IsEditable="True" IsReadOnly="True" TextSearch.TextPath="Foo">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" TextSearch.Text="{Binding Path=Bar}">
<TextBlock Text="{Binding Path=Foo}"/>
<TextBlock Text="{Binding Path=Bar}" Margin="10 0"/>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
要設置文本搜索編程所有你需要做的是:
cmbBox.SetValue(TextSearch.TextPathProperty, "Foo");
[不同的模板在組合框的下拉列表中的項目和所選項目]的可能重複(HTTP://計算器.com/questions/8279107/different-template-for-items-in-comboboxs-drop-down-list-and-for-selected-item) – 2012-02-05 23:31:07
啊,謝謝! – cost 2012-02-05 23:35:46
@ H.B。實際上,你是否知道在代碼中執行此操作的方法,而不是xaml? – cost 2012-02-05 23:40:41