【发布时间】:2015-04-29 06:37:36
【问题描述】:
我想我已经接近了,但我在这里遗漏了一些东西。
我真的在努力扩展我的 XAML 知识,并在我的 WPF 项目中整理我的代码。
我有一种情况,我想根据另一个控件的状态填充组合框的项目。
我有一种检查复选框值的样式:
<Style
x:Key="{x:Type ComboBox}"
TargetType="{x:Type ComboBox}">
<Style.Triggers>
<DataTrigger
Binding="{Binding ElementName=SomeCheckBox, Path=IsChecked}"
Value="True">
这似乎让我可以触发框的值。
我现在正试图弄清楚如何设置我的二传手。
似乎没有办法访问 items 属性...
这是我一直在搞砸的:
<Setter
Property="Items">
<Setter.Value>
<ComboBoxItem Content="SomeValue" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
但很明显这是行不通的。
有没有办法使用 setter 来做到这一点?
我是否需要提出某种列表或列表,将它们存放在窗口资源中并用作项目源?
我该如何列出这份清单?
【问题讨论】:
-
试试 ItemsSource 而不是 Items。
-
我可以使用 ItemsSource,但我仍然需要在 XAML 中提供一个 IEnumerable 才能进行设置。
-
您尝试使用固定列表填充 ComboBox 的列表是否会随时间而变化?
-
已修复。我基本上有两个不同的组合框选项列表,当复选框的状态从选中变为未选中时,它们应该被切换进/出。