![](/icons/38410dou.gif)
![](/icons/38410dou.gif)
本篇文章将提到如何自定义提示信息
在Silverlight中可以通过两种方式来实现
1.ToolTipService.ToolTip
2.PopupControl控件
首先创建
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
![](/icons/38410de.gif)
在默认
![](/icons/38410de.gif)
![](/icons/38410yi.gif)
![Silverlight专题(4)-自定义提示信息](http://www.crazycoder.cn/WebFiles/20091/3ea5ded6-363d-4302-a7ea-fc39a98e3619.jpg)
首先采用第
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
![](/icons/38410yi.gif)
![](/icons/38410dou.gif)
![Silverlight专题(4)-自定义提示信息](http://www.crazycoder.cn/WebFiles/20091/602cf945-6e4f-4165-97a6-4371bdcc1c48.jpg)
按CTRL+F5直接运行网站WebSite
![](/icons/38410dou.gif)
![](/icons/38410dou.gif)
![Silverlight专题(4)-自定义提示信息](http://www.crazycoder.cn/WebFiles/20091/924789e3-055d-42ad-b009-22cc8ad69e54.jpg)
这种方式
![](/icons/38410de.gif)
![](/icons/38410dou.gif)
![](/icons/38410de.gif)
我们使用Rectangle来展示使用ToolTipService.ToolTip
![](/icons/38410de.gif)
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
![Silverlight专题(4)-自定义提示信息](http://www.crazycoder.cn/WebFiles/20091/d5c8c215-f63b-4624-94cb-4d4666c1623d.jpg)
在上图
![](/icons/38410de.gif)
(图片
![](/icons/38410dou.gif)
![](/icons/38410de.gif)
在这里
![](/icons/38410dou.gif)
![](/icons/38410de.gif)
![](/icons/38410dou.gif)
![](/icons/38410yi.gif)
代码如下:
<RectangleFill="Yellow"Height="80"Margin="10">
<ToolTipService.ToolTip>
<ToolTipHorizontalOff
="-20"VerticalOff
="-30">
<EllipseFill="Green"Width="30"Height="30"></Ellipse>
</ToolTip>
</ToolTipService.ToolTip>
</Rectangle>
其中HorizontalOff
![](/icons/38410set.gif)
![](/icons/38410set.gif)
![](/icons/38410de.gif)
![](/icons/38410de.gif)
(通过这两个参数你就不用再忍受提示信息总是在鼠标右下角的苦了)
启动网站WebSite
![](/icons/38410dou.gif)
![](/icons/38410dou2.gif)
![](/icons/38410dou2.gif)
![](/icons/38410dou2.gif)
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
![](/icons/38410de.gif)
![](/icons/38410de.gif)
![Silverlight专题(4)-自定义提示信息](http://www.crazycoder.cn/WebFiles/20091/c52bb00c-7032-4ffc-bdc4-acc22e77c272.jpg)
另外
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
首先在StackPanel中添加
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
![](/icons/38410dou.gif)
![](/icons/38410yi.gif)
接下来提供Popup
![](/icons/38410de.gif)
![](/icons/38410dou.gif)
![](/icons/38410de.gif)
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
这个Popup
![](/icons/38410de.gif)
<Popupx:Name="tip">
<RectangleFill="DeepSkyBlue"Width="60"Height="40"/>
</Popup>
另外给需要提供提示信息
![](/icons/38410de.gif)
<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.HorizontalOff
=e.GetPosition(null).X+20;
10 this.tip.VerticalOff
=e.GetPosition(null).Y-20;
11}
这里也使用到了HorizontalOff
![](/icons/38410set.gif)
![](/icons/38410set.gif)
![](/icons/38410de.gif)
但是PopupControl控件
![](/icons/38410de.gif)
![](/icons/38410de.gif)
![](/icons/38410de.gif)
![](/icons/38410de.gif)
![](/icons/38410yi.gif)
![](/icons/38410de.gif)
Tooltip
![](/icons/38410de.gif)
而Popup
![](/icons/38410de.gif)
![](/icons/38410de.gif)
![](/icons/38410dou.gif)
![](/icons/38410de.gif)
Popup用IsOpen属性来控制是否可见
e.GetPosition(null)将获得当前鼠标所在地相对于浏览器最左上角
![](/icons/38410de.gif)
效果图如下:
![Silverlight专题(4)-自定义提示信息](http://www.crazycoder.cn/WebFiles/20091/e7730af0-007e-431f-ad3b-a1617484c28d.jpg)
![Silverlight专题(4)-自定义提示信息](http://www.crazycoder.cn/WebFiles/20091/222b8035-d117-48b5-b4c3-09eb5e7c8e2e.jpg)
提示信息
![](/icons/38410de.gif)
![](/icons/38410de.gif)
![](/icons/38410de.gif)
最新评论