Silverlight专题(4)-自定义提示信息
2008-10-03 11:32:23 来源:WEB开发网其中HorizontalOffset和VerticalOffset分别代表提示信息将离你的鼠标当前位置的水平和垂直距离
(通过这两个参数你就不用再忍受提示信息总是在鼠标右下角之苦了)
启动网站,我们可以得到如下效果图(鼠标位置截图截不下来。。。用一个红色框框起来的就是创建的黄色矩形的提示信息)
另外一种展示提示信息的方式就是使用Popup控件
首先在StackPanel中添加一个新的Popup空间,并赋予其一个名字
接下来提供Popup的内容,也就是提示内容了(这里我添加的提示内容是一个深天蓝色的矩形)
这个Popup的代码如下:
<Popupx:Name="tip">
<RectangleFill="DeepSkyBlue"Width="60"Height="40"/>
</Popup>
另外给需要提供提示信息的Ellipse创建两个事件动作MouseMove和MouseLeave如下
<EllipseFill="Red"Width="120"Height="80"MouseLeave="Ellipse_MouseLeave"MouseMove="Ellipse_MouseMove"/>
打开Page.xaml.cs文件并给这两个事件添加控制代码如下:
1privatevoidEllipse_MouseLeave(objectsender,MouseEventArgse)
2{
3 this.tip.IsOpen=false;
4}
5
6privatevoidEllipse_MouseMove(objectsender,MouseEventArgse)
7{
8 this.tip.IsOpen=true;
9 this.tip.HorizontalOffset=e.GetPosition(null).X+20;
10 this.tip.VerticalOffset=e.GetPosition(null).Y-20;
11}
这里也使用到了HorizontalOffset和VerticalOffset(用来控制提示信息出现的位置)
但是Popup控件的这两个属性和之前的ToolTip的定义的空间坐标原点是不一样的
Tooltip的原点是鼠标当前所在位置
而Popup的原点是浏览器的最左上角,也就是浏览器的(0,0)点
Popup用IsOpen属性来控制是否可见
e.GetPosition(null)将获得当前鼠标所在地相对于浏览器最左上角的坐标
效果图如下:
提示信息的位置将根据鼠标的位置的移动而移动
Tags:Silverlight 专题 定义
编辑录入:爽爽 [复制链接] [打 印]- ››silverlight全屏显示图片
- ››Silverlight MVVM 模式(一) 切近实战
- ››定义名称时自动代码提示所需的后缀
- ››Silverlight for Windows Phone 7开发系列(1):...
- ››Silverlight for Windows Phone 7开发系列(2):...
- ››Silverlight for Windows Phone 7开发系列(3):...
- ››Silverlight for Windows Phone 7开发系列(4):...
- ››Silverlight for Symbian
- ››专题功能优化 for V7.5 SP3 优化包
- ››专题css详解
- ››Silverlight3系列(四)数据绑定 Data Binding 1
- ››专题功能优化 for v7.5 sp3
更多精彩
赞助商链接