将静态项目填充到 C# WPF 组合框中

populate static items into c# WPF combo box

我正在尝试将静态值添加到用 WPF c# 编写的组合框中。我有以下 xaml 段代码,可将项目添加到我的组合框中。

<ComboBox Text="MyCombo">
<ComboBoxItem  Name="115200">Item1</ComboBoxItem>
<ComboBoxItem  Name="57600">Item2</ComboBoxItem>
<ComboBoxItem  Name="38400">Item3</ComboBoxItem>
</ComboBox>

但是有什么方法可以在我的 xaml 代码中使用组合框的 "ItemSource" 属性 来填充组合框或任何其他 UI将静态值添加到组合框中的方法。 注意:我不想以编码方式填充值。我只想找到 xaml 或 UI 加法。

您可以使用项源从您的视图模型绑定您的组合框项。

参见下面的示例:

首先,您要设置 Window 的 DataContext。

/// <summary> 
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        DataContext = new ViewModel();
    }
}

接下来,

public class ViewModel
{
    public ObservableCollection<string> CmbContent { get; private set; }

    public ViewModel()
    {
        CmbContent = new ObservableCollection<string>
        {
            "Item 1", 
            "Item 2",
            "Item 2"

        };
    }
}

最后,

<Grid>
    <ComboBox Width="200"
          VerticalAlignment="Center"
          HorizontalAlignment="Center"
          x:Name="MyCombo"
          ItemsSource="{Binding CmbContent}" />
</Grid>