没有边框的图像按钮就像工具栏按钮一样?

时间:2011-11-22 15:46:25

标签: wpf image button

我想要一个按钮

  1. 显示无边框,无背景,无文字
  2. 的图像
  3. 如果我选中了图像按钮,那么它会显示背景和边框
  4. 如果我将鼠标悬停在它上面,它会显示背景和边框
  5. 我已经搜索过了,我尝试了很多不同的东西,但这并不是我想要的东西。我尝试在按钮上设置各种属性,使背景和边框透明,但它仍然显示出来。我尝试过使用自定义控件模板的样式。我宁愿不必完全重新发明所有的触发器等,以便在鼠标悬停时渲染按钮。自定义控件模板的最大问题是,我放弃了所有现有功能,而且我基本上是从头开始构建一个新控件。

    这是另一个最接近我想要的链接,但它不适合我。

    How do you completely remove the button border in wpf? - 但是......出于某种原因,悬停效果会被卡住。一个鼠标悬停在图像上并且按钮边框绘制,它一直停留在我点击其他地方之前。

1 个答案:

答案 0 :(得分:0)

实际上,您需要覆盖控件模板。你不会“失去”任何功能(除了UI触发器)。

Original/Default Template - 这是一个很好的起点......将其复制/粘贴到您的XAML中(无论您想要设置此按钮的样式...即按钮资源,UserControl / Window资源,应用程序资源?)。从那里进行调整。

另一种简单的方法是使用Expression Blend。您可以根据现有模板轻松创建新模板,它提供的样式/创作工具比手工编写XAML要好得多(除非您擅长这样做)。


只要显示图像而不是文本,只需将图像设置为内容即可。 Button是ContentControl的一种类型,这意味着它可以容纳任何类型的内容(Object)。