鼠标悬停改变矩形背景 [英] Change rectangle background on mouse hover

查看:217
本文介绍了鼠标悬停改变矩形背景的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以我有没有背景的长方形,我想,当用户在它悬停自己的鼠标,给它一个背景渐变,然后删除当鼠标离开矩形的梯度。



请能有人张贴所需要这个代码,并告诉我在哪里把它放在的.cs / XAML文件?



感谢。


解决方案

本:



<预类=郎咸平的XML prettyprint,覆盖> <矩形WIDTH =100HEIGHT =100StrokeThickness =1行程=黑>
< Rectangle.Style>
<风格的TargetType ={X:型矩形}>
< setter属性=填充VALUE =透明/>
< Style.Triggers>
<触发属性=IsMouseOverVALUE =真>
< setter属性=填充>
< Setter.Value>
<! - 变化的ImageSource你想要的形象使用 - >
<的ImageBrush的ImageSource =C:/Users/Public/1.png/>
< /Setter.Value>
< /二传手>
< /触发>
< /Style.Triggers>
< /样式和GT;
< /Rectangle.Style>
< /矩形>



(请注意,如果您设置填充=透明上的矩形本身触发器将的的原因的依赖项属性值优先


So I have a rectangle with no background and I want to give it a background gradient when the user hovers their mouse over it, and then remove the gradient when the mouse leaves the rectangle.

Please can someone post the code that is needed for this, and tell me where to put it in the .cs/xaml file?

Thanks.

解决方案

This:

<Rectangle Width="100" Height="100" StrokeThickness="1" Stroke="Black">
    <Rectangle.Style>
        <Style TargetType="{x:Type Rectangle}">
            <Setter Property="Fill" Value="Transparent" />
            <Style.Triggers>
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Fill">
                        <Setter.Value>
                            <!-- Change ImageSource to what image you want to use -->
                            <ImageBrush ImageSource="C:/Users/Public/1.png" />
                        </Setter.Value>
                    </Setter>
                </Trigger>
            </Style.Triggers>
        </Style>
    </Rectangle.Style>
</Rectangle>

(Note that if you set Fill="Transparent" on the Rectangle itself the Trigger will not work because of dependency property value precedence)

这篇关于鼠标悬停改变矩形背景的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆