6

我的应用程序有一个以图像为背景的 Silverlight 菜单。我在特定位置和大小使用一些空的 HyperlinkBut​​ton 来模拟图像上的真实按钮(认为是 HTML 图像映射):

<HyperlinkButton x:Name="Portfolio" Width="86" Height="40" Canvas.Top="50" NavigateUri="/portfolio"/>
<HyperlinkButton x:Name="Analysis" Width="79" Height="40" Canvas.Top="50" Canvas.Left="124" NavigateUri="/analysis" BorderThickness="0"/>
<HyperlinkButton x:Name="News" Width="77" Height="40" Canvas.Top="50" Canvas.Left="240"  NavigateUri="/news"/>
<HyperlinkButton x:Name="Questions" Width="80" Height="40" Canvas.Top="50" Canvas.Left="357" NavigateUri="/questions"/>
<HyperlinkButton x:Name="Companies" Width="80" Height="40" Canvas.Top="50" Canvas.Left="477" NavigateUri="/companies"/>

问题是当我单击这些按钮时,它会在单击事件期间显示与超链接按钮区域相对应的蓝色边框。有一种方法可以避免显示吗?

4

3 回答 3

15

我在其他博客中找到了答案,只需在 HyperLinkBut​​ton 实例中设置 IsTabStop="False"。

于 2010-08-22T16:18:27.920 回答
1

有关样式控件的信息,请参阅http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-7-using-control-templates-to-customize-a-control-s-look-and-feel .aspx(向下跳到使用控件模板自定义控件部分的一半)。如果你想从默认样式开始(通常是一个好主意——从这里开始并添加/更改/删除东西,直到你得到你想要的东西)看看这里:http: //msdn.microsoft.com/en-us/library /cc296242(VS.95).aspx

在这种情况下,我认为罪犯是“FocusVisualElement”。您可以更改它的颜色,将可见性设置为“已折叠”,或者删除/更改“聚焦”状态,这样故事板就不会运行。

于 2009-02-05T19:27:42.233 回答
0

您可以在 Blend 中编辑 HyperlinkBut​​ton 的模板: 1.右键单击控件选择“编辑模板->编辑副本” 2.在“状态”面板中单击“已按下” 3.更改名为“FocusVisualElement”的矩形的属性“描边”从纯色到“无刷”

http://silverlight.net/forums/t/40896.aspx

于 2009-08-14T14:58:23.810 回答