XAML / WPF: как связать команду с комбобокситом - PullRequest
0 голосов
/ 06 января 2010

Я хочу привязать команду к комбинированному элементу во многом так же, как типичная команда (прикладная или пользовательская) связана с кнопкой. Я не могу найти пример.

EDIT:

ComboBoxItem существует как часть ContentControl, который также содержит кнопку. С кнопкой связана команда, которая работает хорошо. Как я могу аналогичным образом привязать команду к ComboBoxItem?

<!--    Line    -->
<Button x:Name="Line"
    Style="{DynamicResource Button_Title}"
    Grid.Row="1"
    Grid.RowSpan="3"
    Grid.Column="0"
    Content="Line"
    Command="{x:Static local:Ribbon_AC.Custom_RoutedUICommand}"
    CommandParameter="Line"
    Tag="{DynamicResource Line_32}"/>

    <!--    Arc -->
    <ContentControl x:Name="ArcSplit"
            Template="{DynamicResource Control_SplitSmall}"
            Tag="{DynamicResource Arc_20}"
            Grid.Row="1"
            Grid.Column="1">

    <ComboBox Name="ComboBox_Arc"
        Style="{DynamicResource ComboBox_Small}"
        Width="{DynamicResource Width_DropDown}">

        <!--    Arc_0   -->
        <ComboBoxItem   x:Name="Arc_0"
                Style="{DynamicResource ComboBoxItem_Large}"
                Tag="{DynamicResource Arc0_32}"
                Content="Arc 0">

        </ComboBoxItem>

Ответы [ 2 ]

1 голос
/ 06 января 2010

В качестве одного из вариантов вы можете рассмотреть вопрос о помещении Button в ItemTemplate ComboBox и изменении шаблона Button, чтобы он выглядел «совсем не как кнопка».

Но это грязно. Может быть, вы можете использовать меню вместо ComboBox?

1 голос
/ 06 января 2010
<ComboBox>
    <ComboBox.Resources>
        <Style TargetType="ComboBoxItem">
            <EventSetter Event="Foo" Handler="Bar"/>
        </Style>
    </ComboBox.Resources>
</ComboBox>
...