私は2010 年 10 月の WPF に Microsoft リボンを使用していますRibbonControlGroup
。左と右はテキストのみのRibbonToggleButton
コントロールで、中央は画像のみのコントロールRibbonButton
です。ボタンには、上の行に合わせて定義された幅があります。
私のコード:
<r:RibbonControlGroup>
<r:RibbonToggleButton Width="110" Label="Outgoing" IsChecked="True" />
<!-- Padding and Height set to align the buttons/image -->
<r:RibbonButton Width="30" Padding="5 0" Height="24" SmallImageSource="Images\Small\arrow_swap.png" />
<r:RibbonToggleButton Width="110" Label="Incoming" />
</r:RibbonControlGroup>
問題は、中央のボタンに を適用するとすぐにSmallImageSource
、他の 2 つのボタンが画像の間隔を取得し、テキストが中央に配置されなくなることです。それが問題(1)です。
手っ取り早い解決策が見つからなかったので、中ボタンの画像を 経由ではなく、ボタンの内容に合わせてSmallImageSource
追加してみました。<Image>
ただし、ボタンは空のままです。それが問題(2)です。
3 つ目の解決策は、左右のボタンにも画像を追加することでした。残念ながら、画像とテキストの間に余白がほとんどなく、見栄えがよくありません。<Style TargetType="Image">
に aを追加するなど、マージンを拡大するためにいくつかのことを試みまし<RibbonToggleButton.Resources>
たが、エディターはそれを受け入れて設計時に間隔を表示しますが、実行時にマージンが再びなくなります。それが問題(3)です。
3つの問題のいずれかに対する適切な解決策を誰かが持っていますか? 私はそれを働かせることができません。問題の数は、代替手段の好みでもあります。(1) 適切なハックで使用するのが最も好きです。