2009-09-03 12 views
5
<Window x:Class="MyWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:src="clr-namespace:WpfApplication1" 
    Title="ContactsSelector" Height="300" Width="300"> 
    <Window.Content> 
     <src:MyPage> 
      <!--MyPage is a page that I created and exists in the project--> 
     </src:MyPage> 
    </Window.Content> 
</Window> 

voglio impostare il contenuto di una finestra ad una pagina, proprio come avrei fatto a livello di codice:Imposta Window.Content su una pagina XAML?

Dim w As New MyWindow 
Dim p As New MyPage 
w.Content = p 
w.ShowDialog() 

o impostarla nell'evento Load della finestra, sommariamente io voglio che sia fatto in xaml.

risposta

9

Utilizzare un elemento Frame per mostrare il contenuto della pagina.

<Window> <Frame Source="/Pages/MyPage.xaml"/> </Window> 
3

provare qualcosa di simile, in cui MyPageAssembly punti per l'Assemblea in cui risiede la pagina, e MyPage è il nome della pagina.

<Window 
    x:Class="MyWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:MyPageAssembly="clr-namespace:MyPage;assembly=MyPageAssembly" 
    Title="ContactsSelector" 
    Height="300" 
    Width="300" 
    > 
    <Window.Content> 
     <MyPageAssembly:MyPage /> 
    </Window.Content> 
</Window> 
+0

punto di stile Picky: dal momento che il contenuto è di proprietà contenuto della finestra, non è necessario specificare Window.Content: questo codice è equivalente a . – itowlson

+0

Questo codice prima di pubblicare e ha funzionato per te ??? perchè l'ho provato già prima di fare la mia domanda e ottengo il seguente errore: "Impossibile creare un'istanza di tipo" MyPage ".", Iam che fa se la tua risposta meriterebbe -1 per informazioni errate – Shimmy

+0

Ho usato un codice come questo volte prima, e se non avesse funzionato per te, sarebbe stato utile se lo avessi menzionato nella tua domanda originale. Le mie capacità di lettura della mente sono un po 'arrugginite ... Sei sicuro che l'xmlns sia definito correttamente? Hai provato ad aggiungere un breakpoint nel tuo costruttore MyPage per vedere se qualcosa in quel codice genera un'eccezione? – user112889

Problemi correlati