私は同じことをやろうとしていたと私はこの古い記事を見つけました。私はそれを少し更新してみましょう...
トッドは、UXの人たちがすべての作業をやり遂げることを可能にする多くの他の怠惰なプログラマーのようです。 :)だからここに、グループ内のラジオボタンなどの実際のトグルボタンとトッドのソリューションです:
<RadioButton GroupName="myGroup"
Style="{StaticResource MenuButton}"
Content="One"
IsChecked="True" />
<RadioButton GroupName="myGroup"
Style="{StaticResource MenuButton}"
Content="Two" />
<RadioButton GroupName="myGroup"
Style="{StaticResource MenuButton}"
Content="Three" />
<Style x:Key="MenuButton" TargetType="RadioButton">
<Setter Property="Width" Value="100"/>
<Setter Property="Height" Value="25"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<Border BorderBrush="DarkGray" BorderThickness="3" CornerRadius="3" Background="Gray">
<ToggleButton IsChecked="{Binding IsChecked, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}">
<ToggleButton.Content>
<ContentPresenter></ContentPresenter>
</ToggleButton.Content>
</ToggleButton>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
そして今、あなたはあなたのかわいいボタンのロールオーバー効果を持っており、すべてが一つだけトグルボタンがあることができるようになるだろう " 1度にチェックされました。
ラジオボタンとトグルボタンの両方を3つの状態にすることができます。また、トグルボタンの 'IsThreeState'プロパティも、ここで 'IsChecked'と同じ方法でバインドできます。しかし、デフォルトでは2つの状態になっています。
また、ショートフォーム{TemplateBinding IsChecked}が既定で一方向になり、両者を同期させる必要があるので、長いフォームバインドが重要です。
この例では、当然のことながら、サイズ変更や、もともと投稿されたすべてのものトッドとのボタンをアニメーション化しませんが、それはあなたが容易に確認かされているものとして区別することができ、通常のボタンを与えません。
私が使用しているトグルボタンにはイメージとテキストがありますので、ラジオボタンや関連グループは使用できません。 –
ラジオボタンは、好きなように見せることができます。 –
これを行うには、ラジオボタンのコントロールテンプレートを変更する必要があります。 –