图像按钮,没有边框,像工具栏按钮一样工作



我想要一个按钮

  1. 显示无边框,无背景,无文本的图像
  2. 如果我选择图像按钮,那么它会显示背景和边框
  3. 如果悬停在上面,它会显示背景和边框

我找过了,也试过很多不同的东西,但没有一种是我想要的。我尝试在按钮上设置各种属性以使背景和边框透明,但它仍然显示出来。我尝试了一个自定义控制模板的样式。我宁愿不完全重新发明所有的触发器等,让按钮在鼠标上渲染。自定义控件模板的最大问题是,我失去了所有现有的功能,我基本上是从头开始构建一个新的控件。

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

如何在wpf中完全移除按钮边框?,但是……由于某些原因,悬停效果被卡住了。当我将鼠标移到图像上,按钮边框绘制出来,它一直保持不变,直到我点击其他地方。

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

原始/默认模板——这是一个很好的起点…复制/粘贴到你的XAML(无论你想样式这个按钮…例如按钮资源,用户控件/窗口资源,应用程序资源?)。在此基础上进行调整。

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


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

最新更新