2012-04-03 14 views
0

Ich habe eine Silverlight-Anwendung und eine Website hostet es, ich habe drei Links in der ASP-Webseite Ich möchte auf jedem Link eine andere Silverlight-Anwendung oder andere Silverlight-Ansicht zeigen .In Windows-Formulare machen wir einfach ein neue Form, aber in Silverlight, wie es gemacht wird? indem Sie ein neues Projekt erstellen und die XAP-Datei neu hosten oder eine weitere Page.Xaml-Datei hinzufügen.verschiedene Ansichten in Silverlight

ich so tat:

<Application.Resources> 
    <ResourceDictionary x:Key="AppResource"> 
     <navigationCore:UriMapper x:Key="UriMapper"> 
      <navigationCore:UriMapping Uri="page1" MappedUri="AddRoute.xaml"/> 
     </navigationCore:UriMapper> 
    </ResourceDictionary> 
</Application.Resources> 

und in der asp wie folgt aus:

<a href="Page1.aspx">Page1</a> 

Antwort

2

würde eine Silverlight-Anwendung (XAP-Datei) erstellen und 3 verschiedene Ansichten erstellen. Sie können einen UriMapper zu Ihrer Silverlight-Anwendung hinzufügen und dann Ihre HTML-Links einfach auf die Silverlight-Seiten zeigen lassen. Im Folgenden finden Sie, wie Sie konnte Setup diese Mapper in Ihrem App.xaml

<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"  
      xmlns:navigationCore="clr-namespace:System.Windows.Navigation;assembly=System.Windows.Controls.Navigation" 
      mc:Ignorable="d"> 

    <Application.Resources> 
     <ResourceDictionary x:Key="AppResources"> 

      <!-- Uri Mapper --> 
      <navigationCore:UriMapper x:Key="UriMapper"> 
       <navigationCore:UriMapping Uri="Page1" MappedUri="/View/Page1.xaml" /> 
       <navigationCore:UriMapping Uri="Page2" MappedUri="/View/Page2.xaml" /> 
       <navigationCore:UriMapping Uri="Page3" MappedUri="/View/Page3.xaml" /> 
      </navigationCore:UriMapper> 


     </ResourceDictionary> 

    </Application.Resources> 
</Application> 

Jetzt können Sie einfach Ihre HTML-Links-Setup als:

<a href="http://site.com/#Page1">Page 1</a> 
<a href="http://site.com/#Page2">Page 2</a> 
<a href="http://site.com/#Page3">Page 3</a> 

Am Ende ein besseres Benutzer erstellen ein Silverlight-XAP mit Erfahrung und vermeiden jede App ständig drehen zu müssen, wenn sie

bearbeiten getrennt waren:

Hinweis: Die Mapp edUri oben ist ein Pfad innerhalb Ihrer Silverlight-Anwendung. Also, wenn Ihr Silverlight-Anwendung auf Page1.aspx Seite platziert wird, dann ist die URL, die Sie brauchen so etwas wie:

<a href="Page1.aspx#page1>Page 1</a> 

„Seite1“ in Ihrem app.xaml definiertem ist

+0

Ich tat, wie u sagen, aber seine funktioniert nicht .. Ich habe die Frage aktualisiert., Ich denke, ich vermisse etwas. – AboKevo

+0

eine Bearbeitung gemacht, um zu antworten, um aktualisierte Frage – tsiorn

+0

zu entsprechen können Sie mir bitte ein Dummy-Projekt, das ich herunterladen kann., Es funktioniert nicht für mich, ich bin Neuling in SL, und ich kann nicht herausfinden, wo das Problem ist .. – AboKevo

Verwandte Themen