【问题标题】:Make an image act like a button in WPF使图像像 WPF 中的按钮一样
【发布时间】:2020-05-06 13:21:42
【问题描述】:

我有下面的堆栈面板,其中包含 2 个图像。一种是滴答声,一种是退出。

<StackPanel Grid.Row="3" Orientation="Horizontal">

    <Image Source="C:\Users\USER\Pictures\Tick.png" Height="100" Margin="55,10,0,5" HorizontalAlignment="Left" VerticalAlignment="Center" />
    <Image Source="C:\Users\USER\Pictures\Exit.png" Height="88" Margin="75,10,20,5" HorizontalAlignment="Right" VerticalAlignment="Center"/>

</StackPanel>

我怎样才能使这 2 个图像像一个按钮?我知道您可以使用 来创建一个新按钮,但我想添加一种在单击时充当按钮单击的属性。

编辑:我不希望图像看起来像带有轮廓和单击效果的按钮。它只需要是图像。

【问题讨论】:

标签: wpf button


【解决方案1】:

您可以完全自定义按钮的外观,但仍可以通过创建自定义模板来保留其功能:

<Button Click="Button_Click">
    <Button.Style>
        <Style TargetType="Button">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="Button">
                        <Image Source="C:\Users\USER\Pictures\Tick.png" />
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </Button.Style>
</Button>

上面的示例按钮应该看起来与图像完全一样,但仍然可以像任何其他按钮一样单击。

【讨论】:

  • 谢谢。我现在就试一试,然后放弃更新。这是最简单的方法吗?
  • @NiallUK:是的,我想是的。还有什么比这更简单的呢?
  • 我不确定是否有一个简单的点击属性可以添加到我的代码中来创建一个新的事件处理程序。
  • @NiallUK:你看到我的例子中的Click="Button_Click"了吗?或者您是在问如何将事件处理程序连接到一般的控件?
  • @NiallUK:如果您还有其他问题,请提出一个新问题。
【解决方案2】:

为什么不把图片变成按钮的内容呢?

    <Button Height="100" Margin="55,10,0,5" HorizontalAlignment="Left" VerticalAlignment="Center">
        <Image Source="C:\Users\USER\Pictures\Tick.png"/>
    </Button>

【讨论】:

  • 我可以做到这一点。但我不想要默认按钮附带的视觉样式。我已经编辑了我的问题。
猜你喜欢
  • 2013-04-14
  • 2021-02-03
  • 2015-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-20
  • 1970-01-01
  • 2017-10-08
相关资源
最近更新 更多