2009-09-03 6 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> 

Je veux définir le contenu d'une fenêtre à une page, comme je le ferais programme:Set Window.Content à une page par XAML?

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

Ou régler en cas de chargement de la fenêtre, sommairement je veux que ce soit fait en xaml.

Répondre

9

Utilisez un élément Frame pour afficher le contenu de la page.

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

Essayez quelque chose comme ça, où MyPageAssembly des points à l'assemblée où votre page réside et MaPage est le nom de la page.

<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

style point Picky: puisque le contenu est la propriété du contenu de la fenêtre, vous n'avez pas besoin de préciser window.content: ce code est équivalent à . – itowlson

+0

Est-ce que ce code avant de publier et cela a fonctionné pour vous ??? Parce que je l'ai déjà essayé avant de poser ma question et j'obtiens l'erreur suivante: "Impossible de créer une instance de type 'MyPage'.", Iam douting si votre réponse mériterait -1 pour des informations incorrectes – Shimmy

+0

J'ai utilisé un tel code auparavant, et si cela ne fonctionnait pas pour vous, cela aurait peut-être été utile si vous l'aviez mentionné dans votre question initiale. Mes capacités de lecture d'esprit sont un peu rouillées ... Êtes-vous sûr que les xmlns sont définis correctement? Avez-vous essayé d'ajouter un point d'arrêt dans votre constructeur MyPage pour voir si quelque chose dans ce code déclenche une exception? – user112889

Questions connexes