【问题标题】:How to bind a collection to Extended WPF Toolkit's DropdownButton?如何将集合绑定到扩展 WPF 工具包的 DropdownButton?
【发布时间】:2017-02-10 20:36:02
【问题描述】:

我正在尝试创建一个带有标题/标题的简单下拉列表/组合框。我重复简单。我在扩展 WPF 工具包here 中发现了这个漂亮的DropdownButton。问题是..它不包含ItemsSourceDataSource 之类的东西,所以我什至不能绑定我的集合= 我不能使用MVVM 模式(这在WPF 中没有意义)。我在这里遗漏了什么吗?

这是我使用ComboBox的“目标”示例

            <ComboBox Margin="5" ItemsSource="{Binding MyOptions}">
                <ComboBox.ItemTemplate>
                    <DataTemplate>
                        <CheckBox Content="{Binding DisplayName}" IsChecked="{Binding IsChecked, Mode=TwoWay}" />
                    </DataTemplate>
                </ComboBox.ItemTemplate>
            </ComboBox>

这个例子几乎是完美的,但是我不能用简单的Header="Check your options:" 在 ComboBox 中指定一个标题。

问题是:如何将 ViewModel 中的集合绑定到DropdownButton 控件?

谢谢,

【问题讨论】:

  • 我认为目标是在 DropDownContent 中放置一个菜单(或其他东西)并将其 ItemsSource 绑定到您的列表。您可以将一个命令绑定到每个指向您的 ViewModel 的命令,该 ViewModel 将当前项目作为其命令参数。当用户点击时,做你需要做的事情。
  • 您发布的链接本身告诉我们您可以在其中放置任何自定义内容

标签: c# wpf mvvm combobox wpftoolkit


【解决方案1】:

解决方案可能是:

            <wpfTool:DropDownButton Content="Options">
                <wpfTool:DropDownButton.DropDownContent>
                    <ListView Margin="0" ItemsSource="{Binding MyOptions}">
                        <ListView.ItemTemplate>
                            <DataTemplate>
                                <CheckBox Content="{Binding DisplayName}" IsChecked="{Binding IsChecked, Mode=TwoWay}" />
                            </DataTemplate>
                        </ListView.ItemTemplate>
                    </ListView>
                </wpfTool:DropDownButton.DropDownContent>
            </wpfTool:DropDownButton>

【讨论】:

    猜你喜欢
    • 2012-02-28
    • 1970-01-01
    • 2012-11-16
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多