使用静态资源在按钮图像上显示文本

火鹰

这是我的按钮样式:

        <Style TargetType="local:Button" xmlns:local="clr-namespace:Terminal">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type local:Button}">
                        <Image x:Name="img" Source="{Binding DefaultImage,RelativeSource={RelativeSource TemplatedParent}, FallbackValue=img/0.png, TargetNullValue=img/0.png}" Stretch="Fill">
                        </Image>

                        <ControlTemplate.Triggers>
                            <Trigger Property="IsPressed" Value="true">
                                <Setter Property="Source" TargetName="img" 
                                        Value="{Binding PressedImage,RelativeSource={RelativeSource TemplatedParent}, FallbackValue=img/1_push.png, TargetNullValue=img/1_push.png}">
                                </Setter>
                            </Trigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

我的按钮代码如下:

        <local:Button xmlns:local="clr-namespace:Terminal"  x:Name="btnLine" Grid.Column="1" Content="LINE"
                   DefaultImage="img/line.png" PressedImage="img/line_pushed.png" Click="btnLine_Click">
        </local:Button>

问题在于按钮内容未显示在图像上方。我也尝试放入运气TextBlocklocal:Button但仍然没有运气。如何显示按钮的内容?

您尚未定义文本在模板中的任何位置,实际上只是告诉按钮只是图像。

该按钮将<ContentPresenter/>在控件模板的元素添加“内容” 这是一件容易忽略的事情!所以你需要像这样的东西:

    <Style TargetType="local:Button" xmlns:local="clr-namespace:Terminal">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:Button}">
                    <Grid>
                       <Image x:Name="img" Source="{Binding  DefaultImage,RelativeSource={RelativeSource TemplatedParent}, FallbackValue=img/0.png, TargetNullValue=img/0.png}" Stretch="Fill">
                       </Image>
                       <ContentPresenter/>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger Property="IsPressed" Value="true">
                            <Setter Property="Source" TargetName="img" 
                                    Value="{Binding PressedImage,RelativeSource={RelativeSource TemplatedParent}, FallbackValue=img/1_push.png, TargetNullValue=img/1_push.png}">
                            </Setter>
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在按钮Excel宏上显示的文本

来自分类Dev

使图像和文本在按钮内并排显示?

来自分类Dev

如何在按钮内使用静态和动态文本

来自分类Dev

Swift-如何在按钮上显示图像?

来自分类Dev

如何在按钮动作上显示图像

来自分类Dev

在按钮OnClientClick上使用资源文件

来自分类Dev

如何使用CSS在按钮中显示文本

来自分类Dev

在按钮上使用Jquery调整SVG图像的大小

来自分类Dev

我想使用python KIVY在按钮上添加文本

来自分类Dev

使用javascript在按钮单击上添加文本框

来自分类Dev

使用Jquery在按钮单击上显示模态

来自分类Dev

使用Jquery在按钮单击上隐藏/显示Div

来自分类Dev

如何使用JavaScript在按钮单击上显示内容

来自分类Dev

如何使用AngularJS在按钮单击上显示(隐藏的)<td>?

来自分类Dev

如何在按钮上的半透明图像上实现文本

来自分类Dev

如何在按钮中显示图像?

来自分类Dev

如何在按钮上显示/隐藏文本旁边显示图标?

来自分类Dev

Flutter:onPressed在按钮右侧显示文本

来自分类Dev

Glyphicon 显示在按钮文本上方

来自分类Dev

文本不会显示在按钮下方

来自分类Dev

我想把图像放在按钮上

来自分类Dev

如何使图像“浮动”在按钮上?

来自分类Dev

在按钮上添加椭圆图像

来自分类Dev

模拟器未在按钮上显示图像单击android

来自分类Dev

模拟器未在按钮上显示图像单击android

来自分类Dev

将鼠标悬停在按钮上时显示图像

来自分类Dev

在按钮上显示日期(Android)

来自分类Dev

在按钮上显示div单击

来自分类Dev

在按钮上显示浮点数