【问题标题】:Navigation error导航错误
【发布时间】:2014-01-08 05:21:11
【问题描述】:

我的 Silverlight 4 应用程序中有一个超链接按钮。单击此链接时,我想下载apk 文件。我可以下载文件,但我的问题是,当我单击链接时,它会下载文件并尝试在该链接上导航,因此它会显示文件下载对话框并引发异常。

超链接按钮后面的代码是

    private void hyperlinkButton1_Click(object sender, RoutedEventArgs e)
    {
       Uri myAbsoluteUri = new Uri(Application.Current.Host.Source,"../download/ItimHRMSAndroidApp.apk");
       HtmlPage.Window.Navigate(myAbsoluteUri);

    }

我只是想打开下载链接,而不是真正导航到该页面。

【问题讨论】:

  • 尝试将目标参数设置为 '_blank' 以便打开一个新窗口。

标签: c# silverlight silverlight-4.0 apk


【解决方案1】:

在标记中设置 URI:

<HyperlinkButton x:Name="MyButton" TargetName="_blank" Content="Download APK" NavigateUri="/download/ItimHRMSAndroidApp.apk" Canvas.Top="40" Canvas.Left="30"></HyperlinkButton>

并删除Click 事件处理程序:

罢工>

 private void hyperlinkButton1_Click(object sender, RoutedEventArgs e)
 {
     Uri myAbsoluteUri = new Uri(Application.Current.Host.Source,"../download/ItimHRMSAndroidApp.apk");
     HtmlPage.Window.Navigate(myAbsoluteUri);
 }

【讨论】:

  • 这个下载文件夹在哪里?在silverlight项目中。?如何指向网站下载文件夹?
  • download 文件夹将位于托管 Silverlight 应用程序的网站的根目录中。例如如果您的网站是www.example.com,这将指向http://www.example.com/download/ItimHRMSAndroidApp.apk
【解决方案2】:

为什么不尝试使用Generic Web handler

并返回apk文件 Like this post

希望这会有所帮助。

【讨论】:

    【解决方案3】:

    问题不在于 _target 字段。它是路径。

    【讨论】:

    • 是的,伙计。你的回答也很有帮助。我接受了你的答案作为正确答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多