我试图将静态值添加到用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添加的方法。
答案 0 :(得分:1)
您可以使用项目源从视图模型中绑定组合框项目。
请参见以下示例:
首先,您要设置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>