wpf 多个RadioButton公用一个样式,每个显示的图片不一样


   

<Style x:Key="rbtnMainMenuStyle" TargetType="RadioButton">
        <Setter Property="IsChecked" Value="False"/>
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="Cursor" Value="Hand"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="RadioButton">
                    <Grid x:Name="dp" Height="100" Width="200" Background="Transparent">
                        <DockPanel Tag="{TemplateBinding Tag}" ToolTip="{TemplateBinding Content}"  LastChildFill="False" HorizontalAlignment="Center" VerticalAlignment="Center" >
                            <Image Margin="-15,0,0,0" Width="74" Height="74" DockPanel.Dock="Left" x:Name="_img" Stretch="None" />
                            <TextBlock x:Name="tbx" FontSize="28" DockPanel.Dock="Left" Margin="5 0 0 0" TextTrimming="CharacterEllipsis" VerticalAlignment="Center" Foreground="{TemplateBinding Foreground}" Text="{TemplateBinding Content}" />
                        </DockPanel>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <MultiTrigger>
                            <MultiTrigger.Conditions>
                                <Condition Property="IsChecked" Value="true"/>
                                <Condition Property="Tag" Value="0"/>
                            </MultiTrigger.Conditions>
                            <Setter TargetName="_img" Property="Source" Value="pack://application:,,,/程序名;component/Images/Main/LayoutSelect.png"/>
                            <Setter TargetName="dp" Property="Background" >
                                <Setter.Value>
                                    <ImageBrush ImageSource="pack://application:,,,/程序名;component/Images/Main/MainSel.png" />
                                </Setter.Value>
                            </Setter>
                        </MultiTrigger>
                        <MultiTrigger>
                            <MultiTrigger.Conditions>
                                <Condition Property="IsChecked" Value="true"/>
                                <Condition Property="Tag" Value="1"/>
                            </MultiTrigger.Conditions>
                            <Setter TargetName="_img" Property="Source" Value="pack://application:,,,/程序名;component/Images/Main/ProSel.png"/>
                            <Setter TargetName="dp" Property="Background" >
                                <Setter.Value>
                                    <ImageBrush ImageSource="pack://application:,,,/程序名;component/Images/Main/MainSel.png" />
                                </Setter.Value>
                            </Setter>
                        </MultiTrigger>
                        <MultiTrigger>
                            <MultiTrigger.Conditions>
                                <Condition Property="IsChecked" Value="true"/>
                                <Condition Property="Tag" Value="2"/>
                            </MultiTrigger.Conditions>
                            <Setter TargetName="_img" Property="Source" Value="pack://application:,,,/程序名;component/Images/Main/ResultSel.png"/>
                            <Setter TargetName="dp" Property="Background" >
                                <Setter.Value>
                                    <ImageBrush ImageSource="pack://application:,,,/程序名;component/Images/Main/MainSel.png" />
                                </Setter.Value>
                            </Setter>
                        </MultiTrigger>
                        <MultiTrigger>
                            <MultiTrigger.Conditions>
                                <Condition Property="IsChecked" Value="false"/>
                                <Condition Property="Tag" Value="0"/>
                            </MultiTrigger.Conditions>
                            <Setter TargetName="_img" Property="Source" Value="pack://application:,,,/程序名;component/Images/Main/LayoutGray.png"/>
                        </MultiTrigger>
                        <MultiTrigger>
                            <MultiTrigger.Conditions>
                                <Condition Property="IsChecked" Value="false"/>
                                <Condition Property="Tag" Value="1"/>
                            </MultiTrigger.Conditions>
                            <Setter TargetName="_img" Property="Source" Value="pack://application:,,,/程序名;component/Images/Main/ProGray.png"/>
                        </MultiTrigger>
                        <MultiTrigger>
                            <MultiTrigger.Conditions>
                                <Condition Property="IsChecked" Value="false"/>
                                <Condition Property="Tag" Value="2"/>
                            </MultiTrigger.Conditions>
                            <Setter TargetName="_img" Property="Source" Value="pack://application:,,,/程序名;component/Images/Main/ResultGgray.png"/>
                        </MultiTrigger>
                        <Trigger Property="IsEnabled" Value="false">
                            <Setter Property="Foreground" TargetName="tbx" Value="lightgray"/>
                            <Setter Property="Opacity" TargetName="_img" Value="0.5"/>
                            <!--控件半透明 降色调 与上层转化器配合使用效果可以-->
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值