1

我有一个看起来像这样的按钮:

<Button Margin="3,0,2,0" Command="{Binding AddCommand}">
  <StackPanel Orientation="Horizontal">
     <Image Width="24" Stretch="Uniform"
            Source="pack://application:,,,/MyProj;component/Images/Add.png"/>
   </StackPanel>
</Button>

它没有任何文字。但如果是这样,它会在 StackPanel 中有这个:

<Label Margin="2,0,1,0" Content="_Add" />

这将允许 Alt+A 成为按钮的键盘命令。

有没有办法在按钮上没有文字的情况下进行设置?

注意 AddCommand 是一个 DelegateCommand(它必须是)。所以 RoutedCommand 设置快捷键的方式是行不通的。(除非有办法将 DelegateCommand 改造成 RoutedCommand。)

4

1 回答 1

1

事实证明这足以让它工作:

<Button Margin="3,0,2,0" Command="{Binding AddCommand}">
  <StackPanel Orientation="Horizontal">
     <Image Width="24" Stretch="Uniform"
            Source="pack://application:,,,/MyProj;component/Images/Add.png"/>
     <Label Margin="0" Width="0" Opacity="0" Content="_Add" />
   </StackPanel>
</Button>

有点hack,因为它添加了一个不可见的标签。但它工作得很好。

于 2012-10-22T21:56:20.020 回答