Button中的ComboBox,如何将Combobox的"SelectedItem"作为Button的CommandParameter传递?
ComboBox inside Button, how to pass "SelectedItem" of Combobox as CommandParameter of Button?
我无法访问位于按钮内的组合框的 SelectedItem
。我想将 SelectedItem 作为 Button 的 CommandParameter
传递给我的虚拟机。在我的 VM 中,我使用 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>
摆脱 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>
我无法访问位于按钮内的组合框的 SelectedItem
。我想将 SelectedItem 作为 Button 的 CommandParameter
传递给我的虚拟机。在我的 VM 中,我使用 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>
摆脱 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>