在C# WPF中,要在组合框中显示两个DisplayMember和一个选定的值路径,可以使用以下步骤:
public class ItemModel
{
public string DisplayMember1 { get; set; }
public string DisplayMember2 { get; set; }
public string SelectedValuePath { get; set; }
}
<ComboBox x:Name="comboBox" ItemsSource="{Binding ItemList}" />
public ObservableCollection<ItemModel> ItemList { get; set; }
public MainWindow()
{
InitializeComponent();
DataContext = this;
ItemList = new ObservableCollection<ItemModel>();
// 添加ItemModel对象到ItemList集合中
ItemList.Add(new ItemModel { DisplayMember1 = "Item 1", DisplayMember2 = "Item A", SelectedValuePath = "Value1" });
ItemList.Add(new ItemModel { DisplayMember1 = "Item 2", DisplayMember2 = "Item B", SelectedValuePath = "Value2" });
// ...
}
<ComboBox x:Name="comboBox" ItemsSource="{Binding ItemList}">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding DisplayMember1}" />
<TextBlock Text=" - " />
<TextBlock Text="{Binding DisplayMember2}" />
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
这样,组合框中的每个项将以"DisplayMember1 - DisplayMember2"的形式显示。
<ComboBox x:Name="comboBox" ItemsSource="{Binding ItemList}" SelectedValuePath="{Binding SelectedValuePath}" />
这样,当选择一个项时,SelectedValuePath属性将包含选定的值路径。
请注意,以上示例中的代码仅为演示目的,实际应用中可能需要根据具体情况进行适当修改。另外,腾讯云相关产品和产品介绍链接地址可以根据实际需求进行选择和添加。
领取专属 10元无门槛券
手把手带您无忧上云