ComboBox внутри Button, как передать «SelectedItem» Combobox как CommandParameter для кнопки? - PullRequest
0 голосов
/ 19 февраля 2019

Я не могу получить доступ к SelectedItem Combobox, который находится внутри кнопки.Я хочу передать SelectedItem как CommandParameter кнопки моей виртуальной машине.Внутри моей виртуальной машины я использую MVVMLight ICommand<T>.

Что я делаю не так?

<dx:SimpleButton Margin="0,5,0,5" MinWidth="160" Command="{Binding CreateNewSymbolCommand}" CommandParameter="{Binding ElementName=AssetClassInButton, Path=SelectedItem}">
            <dx:SimpleButton.ContentTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Vertical">
                        <TextBox Text="Choose Asset Class" Foreground="LightGreen" HorizontalAlignment="Center"/>
                        <dxe:ComboBoxEdit Name="AssetClassInButton" MinWidth="150" IsTextEditable="False" ItemsSource="{Binding Source={StaticResource AssetClassEnumValues}}"/>
                    </StackPanel>

                </DataTemplate>
            </dx:SimpleButton.ContentTemplate>
        </dx:SimpleButton>

1 Ответ

0 голосов
/ 19 февраля 2019

Избавьтесь от ContentTemplate \ DataTemplate - он вам не нужен, так как вы устанавливаете содержимое кнопки напрямую, а не шаблон повторяющегося элемента.

<dx:SimpleButton Margin="0,5,0,5" MinWidth="160" Command="{Binding CreateNewSymbolCommand}" CommandParameter="{Binding ElementName=AssetClassInButton, Path=SelectedItem}">
    <StackPanel Orientation="Vertical">
        <TextBox Text="Choose Asset Class" Foreground="LightGreen" HorizontalAlignment="Center"/>
        <dxe:ComboBoxEdit Name="AssetClassInButton" MinWidth="150" IsTextEditable="False" ItemsSource="{Binding Source={StaticResource AssetClassEnumValues}}"/>
    </StackPanel>
</dx:SimpleButton>
...