2010-04-30 75 views

回答

-3

你不能在一个新的标签“打开的唯一事情是一个网页。如果您想在新选项卡中打开不同的Silverlight应用程序,则需要将其托管在网页中,并且您需要使用HtmlPage.Window.Navigate()打开该页面。你不能只是打开一个新的标签,并以某种方式包含嵌入在应用程序中的东西 - 这不是webbrowsers的工作方式。

+0

我写了HtmlPage.Window.Navigate(new Uri(“http :// localhost:52878/DoNationFinalTestPage.aspx#/ jjj“),”Organiztrion_info_from_toolTip“);是我构建的窗口,但它在新窗口中再次打开应用程序,而不是”Organiztrion_info_from_toolTip“窗口 – aharon 2010-05-02 05:50:28

14

HtmlPage.Window.Navigate()方法有一个过载,允许您指定要加载新页面的框架。_blank用于新的窗口/选项卡。

HtmlPage.Window.Navigate(new Uri("http://google.com"), "_blank"); 
+0

但它不是谷歌或类似的东西,它是我创建的一个窗口,那么我需要在那里放置什么URL? – aharon 2010-04-30 10:51:16

+0

然后将google.com网址更改为您自己的网址... – 2010-04-30 12:18:28

+0

但我没有网址!这就是要点,它只是我创建的一个窗口,所以它dos'nt有URL,还是它? – aharon 2010-04-30 12:38:29

0

您可以使用HyperlinkButton这个。

<HyperlinkButton NavigateUri="http://www.silverlight.net" TargetName="_blank" Content="HyperlinkButton"/> 

当您指定“_blank”作为TargetName时。一个新的选项卡或窗口打开,指定的uri被打开。 TargetName的其他值也是有效的。详见here

编辑:

要在新标签中打开同一个Silverlight应用程序可以使用System.Windows.Browser.HtmlPage.Document.DocumentUri作为HyperlinkBut​​ton的NavigationUri。

+0

,窗口在哪里? System.Windows.Browser.HtmlPage.Document.DocumentUri.myWindow? – aharon 2010-04-30 11:27:10

+0

@aharont:我不明白是什么意思? – Jehof 2010-04-30 11:32:31

+0

好的,如果我的窗口被称为orgTip,我怎样才能打开它与你写的行? – aharon 2010-04-30 11:34:30

7

考虑您的问题从字面上的答案是: -

HtmlPage.Window.Navigate(HtmlPage.Document.DocumentUri, "_blank"); 
+0

但是没有提及需要打开的窗口。 让我说我的窗口的名称是应用程序,它是如何适合你写的? – aharon 2010-04-30 13:30:55

+0

@aharont:如果窗口名称是“app”,则将“_blank”更改为“app” – AnthonyWJones 2010-04-30 14:37:09

+0

如下所示: HtmlPage.Window.Navigat(HtmlPage.Document.DocumentUri,“OrganiztrionInfoFromToolTip”); ? 它再次打开我的程序,而不是我的窗口... – aharon 2010-04-30 14:51:29

0

在.aspx页面中

<head id="Head1" runat="server"> 
    <title>Your Applicateion</title> 
    <script type="text/javascript"> 
     var windowClose = window.close; 
     window.close = function() { 
      window.open("", "_self"); 
      windowClose(); 
     } 
     function OpenWindow() { 
      window.opener = 'x'; 
      window.close();    
      window.open('Default.html', '_blank', 'status=no,toolbar=no,location=no,menubar=no,directories=no,resizable=no,scrollbars=no,height=' + screen.availHeight + ',width=' + screen.availWidth + ',top=0,left=0'); 
      return false; 
     } 
    </script> 
</head> 
<body onload="OpenWindow();"> 
    <form id="form1" runat="server"> 
    </form> 
</body> 
1

也可以尝试这个而不是使用URI喜欢这里的人所提出的建议,你应该刚刚创建页面的对象,并把它传递到导航方法。

Dim yournewpage as new OrganiztrionInfoFromToolTip() 
HtmlPage.Window.Navigate(yournewpage, "_blank") 
相关问题