读书人

请教怎么在WPF的cs文件中定义图片Radi

发布时间: 2012-03-31 13:13:26 作者: rapoo

请问如何在WPF的cs文件中定义图片RadioButton呢?
我把图片加到了resource文件里面,希望在窗口中显示图片radiobutton,请问这样的radiobutton应该怎么定义呢?谢谢大家了先

[解决办法]

探讨
谢谢QQAMOOON兄,radiobutton不支持直接设置成图片吗?

[解决办法]
XML code
<RadioButton.Style>    <Style TargetType="{x:Type RadioButton}">        <Style.Resources>            <Style x:Key="CheckRadioFocusVisual">                <Setter Property="Control.Template">                    <Setter.Value>                        <ControlTemplate>                            <Rectangle                                Margin="14,0,0,0"                                StrokeThickness="1"                                Stroke="Black"                                StrokeDashArray="1 2"                                SnapsToDevicePixels="true"/>                        </ControlTemplate>                    </Setter.Value>                </Setter>            </Style>        </Style.Resources>        <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>        <Setter Property="Background" Value="Transparent"/>        <Setter Property="BorderBrush" Value="#dddddd"/>        <Setter Property="BorderThickness" Value="1"/>        <Setter Property="HorizontalAlignment" Value="Center"/>        <Setter Property="VerticalAlignment" Value="Center"/>        <Setter Property="Template">            <Setter.Value>                <ControlTemplate TargetType="{x:Type RadioButton}">                    <BulletDecorator Background="Transparent">                        <BulletDecorator.Bullet>                            <!-- 这里是修改过的部分 开始 -->                            <Border                                Background="{TemplateBinding Background}"                                BorderBrush="{TemplateBinding BorderBrush}"                                HorizontalAlignment="{TemplateBinding HorizontalAlignment}"                                VerticalAlignment="{TemplateBinding VerticalAlignment}"                                SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">                                <Image x:Name="PART_Image" Width="12">                                    <Image.Source>                                        <DrawingImage>                                            <DrawingImage.Drawing>                                                <GeometryDrawing Brush="OrangeRed" Geometry="M 0 0 L 3.5 4 L 7 0 Z"/>                                            </DrawingImage.Drawing>                                        </DrawingImage>                                    </Image.Source>                                    <Image.Effect>                                        <DropShadowEffect BlurRadius="1" Opacity="0.75" ShadowDepth="0"/>                                    </Image.Effect>                                </Image>                            </Border>                            <!-- 这里是修改过的部分 结束 -->                        </BulletDecorator.Bullet>                        <ContentPresenter                            Margin="{TemplateBinding Padding}"                            VerticalAlignment="{TemplateBinding VerticalContentAlignment}"                            HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"                            RecognizesAccessKey="True"/>                    </BulletDecorator>                    <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="true">                            <Setter TargetName="PART_Image" Property="Source">                                <Setter.Value>                                    <DrawingImage>                                        <DrawingImage.Drawing>                                            <GeometryDrawing Brush="OrangeRed" Geometry="M 0,4 L 3.5,0 L 7,4 Z"/>                                        </DrawingImage.Drawing>                                    </DrawingImage>                                </Setter.Value>                            </Setter>                        </Trigger>                        <!-- 自定义触发器 结束 -->                    </ControlTemplate.Triggers>                </ControlTemplate>            </Setter.Value>        </Setter>    </Style></RadioButton.Style> 

读书人网 >C#

热点推荐