2011-02-14 109 views
0

我有一个Silverlight应用程序,我在其中显示一些电话号码。我希望将这些数字显示为链接,并且当用户点击要重定向到Skype的链接时。 (与html相同)。从Silverlight拨打Skype号码

这是在HTML相当于(刚刚明白了什么,我需要):

<a href="callto:+11 11 111 11 11"> +11 11 111 11 11</a> 

在Silverlight我试着用:

<HyperlinkButton Content="{Binding}" NavigateUri="{Binding StringFormat=callto:\{0\}}" /> 

,但我得到System.InvalidOperationException:无法浏览到callto:+11 11 111 11 11.

有人知道这个解决方案吗?

回答

2

你可以尝试使用Javascript来调用这种类型的锚吗?如果你能够通过JavaScript来做到这一点,请尝试使用eval函数从Silverlight中调用JavaScript的:

HtmlPage.Window.Eval();

+0

它像一个魅力工作:)谢谢。 – Costin 2011-02-14 12:12:08

0

这可能是晚了一点,但如果你仍想保留它在Silverlight代码,那么这将工作:

Public Class MyHyperLink : Inherits HyperlinkButton 
Sub New(ByVal uri As String) 
    MyBase.NavigateUri = New Uri(uri) 
End Sub 

Public Sub Execute() 
    Application.Current.Host.Content.IsFullScreen = False 
    MyBase.TargetName = "_blank" 
    MyBase.OnClick() 
End Sub 

末级

,并呼吁,添加以下代码::

Dim nav As New MyHyperLink(URL) 
nav.Execute()