在Sliverlight中打开网页的几种方法
本文主要介绍在sliverlight项目中使用HyperLinkButton控件打开外部链接进入相应网页的方法
这是最简单的方法,只需要设置几个属性即可:
NavigateUri:想要打开的网页地址
TargetName:目标框架,既_blank、_parent等
例如:
<HyperlinkButton
x:Name="txtTitle"
NavigateUri="http://control.blog.sina.com.cn/admin/article/article_add.php"
TargetName="_blank" />
注意:如果Silverlight对象的EnableNavigation设置为“none”的话,会抛出异常。
如果想在c#后台进行实现相应的功能那么可以调用HtmlWindow.Navigate方法
例如:
System.Windows.Browser.HtmlPage.Window.Navigate(new Uri("http://control.blog.sina.com.cn/admin/article/article_add.php", UriKind.Absolute), "_blank");
注意:如果将slilverlight程序下载到本地,此方法将会失效。在xaml中则OK。
需求:在DataGrid中,之前cell中的dataTemplet中放了一个TextBlock,进行相应属性的显示,现在需要此cell中的属性需要进行链接到外部网页,但是不需要当悬浮时有linkButton的一些样式出现,保持之前TextBlock的样式。
解决:当然,我们可以把TextBlock替换成LinkButton,然后重写linkbutton的样式。
现在我提供一种简单的方式,即TextBlock不变,在他的下方放一个LinkButton,只用于点击链接用,TextBlock用于显示。但是我们还需要做的是设置TextBlock的接收事件为false,代码:
<HyperlinkButton x:Name="txtTitle"
Opacity="0"
Content="{Binding
Title.Text}"
NavigateUri="{Binding
Links[0].Uri}"
TargetName="_blank" />
<TextBlock
IsHitTestVisible="False"
Text="{Binding Title.Text}"/>
希望此博客能给的大家带来帮助,O(∩_∩)O谢谢