3
如何將單選按鈕樣式更改爲XAML中的按鈕樣式?如果檢查單選按鈕,如何設置背景顏色? 我想使用默認顏色(因爲我使用不同皮膚)。單選鈕按鈕樣式XAML
如何將單選按鈕樣式更改爲XAML中的按鈕樣式?如果檢查單選按鈕,如何設置背景顏色? 我想使用默認顏色(因爲我使用不同皮膚)。單選鈕按鈕樣式XAML
您需要爲RadioButton定義controltemplate並在controltemplate中應用觸發器。就像是。
<Style x:Key="ButtonRadioButtonStyle" TargetType="{x:Type RadioButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RadioButton}">
<Button Content="{TemplateBinding Content}"/>
<ControlTemplate.Triggers>
<Trigger Property="HasContent" Value="true">
<Setter Property="FocusVisualStyle" Value="{StaticResource CheckRadioFocusVisual}"/>
<Setter Property="Padding" Value="4,0,0,0"/>
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger>
<Trigger Property="IsChecked" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
並使用它。
<RadioButton Style="{DynamicResource ButtonRadioButtonStyle}">
<Image Source="ImagePath\ABC.png"/>
</RadioButton>
希望它可以幫助..
我經常使用這個選項
<RadioButton Height="23" Width="23" ToolTip="По левому краю" GroupName="TextAlignmentGroup"
IsChecked="{Binding IsChecked}">
<RadioButton.Template>
<ControlTemplate TargetType="RadioButton">
<Image Name="ImageName" Stretch="Fill"/>
<ControlTemplate.Triggers>
<Trigger Property="ToggleButton.IsChecked" Value="True">
<Setter TargetName="ImageName" Property="Image.Source">
<Setter.Value>
<BitmapImage UriSource="../../Resources/pressed.png"></BitmapImage>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="ToggleButton.IsChecked" Value="False">
<Setter TargetName="ImageName" Property="Image.Source">
<Setter.Value>
<BitmapImage UriSource="../../Resources/image.png"></BitmapImage>
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</RadioButton.Template>
</RadioButton>
是它的幫助謝謝!但現在,我想在我的單選按鈕中添加一個圖像(我想爲我的兩個radioButtons使用相同的樣式,但是使用兩個diffrents圖像)。如何將圖片設置爲我的風格(在按鈕上)的內容? – Ben
@Ben: - 爲你編輯答案。 –
我發現單擊按鈕時IsChecked屬性沒有更新。我用下面的定義'ToggleButton Content =「{TemplateBinding Content}」替換了一個按鈕ToggleButton IsChecked =「{Binding Path = IsChecked,Mode = TwoWay,RelativeSource = {RelativeSource TemplatedParent}}」/>',其中I找到更好的作品。 –