Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 完全拉伸按钮上的鼠标悬停效果_C#_Wpf_Xaml - Fatal编程技术网

C# 完全拉伸按钮上的鼠标悬停效果

C# 完全拉伸按钮上的鼠标悬停效果,c#,wpf,xaml,C#,Wpf,Xaml,我使用WPF按钮鼠标在屏幕上显示特定区域,并在代码中使用下面的xaml 如果我删除按钮控件的Background=“Red”属性,我必须准确地单击中心以在屏幕上显示我的区域。 屏幕截图是 我怎样才能使按钮控件在没有背景色的情况下工作,但拉伸内容效果?就像在按钮区域的任何地方单击一样,应该会显示内容,我猜这是代码中有问题的一行 <Border Name="border" Background="Red"> <ContentPresenter VerticalAli

我使用WPF按钮鼠标在屏幕上显示特定区域,并在代码中使用下面的xaml

如果我删除按钮控件的Background=“Red”属性,我必须准确地单击中心以在屏幕上显示我的区域。 屏幕截图是


我怎样才能使按钮控件在没有背景色的情况下工作,但拉伸内容效果?就像在按钮区域的任何地方单击一样,应该会显示内容

,我猜这是代码中有问题的一行

<Border Name="border" Background="Red">
      <ContentPresenter  VerticalAlignment="Center" HorizontalAlignment="Stretch" />
</Border>

问题是,当您删除边框的背景时,边框上没有对鼠标触发器作出反应的命中测试(在您的示例中为IsMouseOver)

诀窍是将背景笔刷设置为透明,以便背景可以通过点击测试并响应触发器

因此,尝试将边界更改为

<Border Name="border" Background="Transparent">
          <ContentPresenter  VerticalAlignment="Center" HorizontalAlignment="Stretch" />
    </Border>


您可以在上阅读有关命中测试的更多信息。

您是否尝试将背景颜色设置为透明?@Krishna,您已经正确确定了解决方案。请在回答中添加(希望有更多信息),以便将此问题标记为已回答。谢谢。是的,我正在用一个透明的按钮来尝试。但是有没有办法让它的内容像拉伸一样?在鼠标中的事件只适用于非空的客户端区域(非透明)。你可以使用一个简单的技巧——把不透明的东西放在透明的东西后面来接受鼠标事件。你能帮我编辑类似的东西吗?我想显示此BUton控件后面的内容[或按钮位于浏览器控件顶部]透明颜色将不起作用。我非常确定(但不是100%,因此没有否决权)。我为整个地区做了很多尝试,但没有任何成功。任何人都可以帮助清除xaml iposted@JMat对不起,我不明白这个问题。当我将边框的背景笔刷从红色更改为透明时,我仍然可以将鼠标悬停在按钮的任何部分上,以便您的故事板运行?你能提供你的问题的更多细节吗?