Comment puis-je afficher mon contrôle utilisateur dans MainWindow?
Je suis en train de construire un petit MVVM application de test, mais ne peut pas vraiment comprendre comment faire pour afficher mon contrôle utilisateur dans la MainWindow.
Mon Explorateur De Solutions:
J'ai reçu un dictionnaire de ressources:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="clr-namespace:MVVM.ViewModel"
xmlns:vw="clr-namespace:MVVM.View">
<DataTemplate DataType="{x:Type vm:ViewModel}">
<vw:View />
</DataTemplate>
</ResourceDictionary>
J'ai obtenu mon point de vue:
<UserControl x:Class="MVVM.View.View"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<UserControl.Resources>
<DataTemplate x:Key="PersonTemplate">
<StackPanel>
<TextBlock Text="{Binding FirstName}" />
</StackPanel>
</DataTemplate>
</UserControl.Resources>
<ListBox ItemsSource="{Binding Path=Persons}"
ItemTemplate="{StaticResource PersonTemplate}" />
</UserControl>
et Ma MainWindow
<Window x:Class="MVVM.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="clr-namespace:MVVM.ViewModel"
Title="MainWindow" Height="350" Width="525">
<Window.Resources>
<ResourceDictionary Source="MainWindowResources.xaml" />
</Window.Resources>
<Grid>
</Grid>
</Window>
source d'informationauteur Garth Marenghi
Vous devez vous connecter pour publier un commentaire.
La plus évidente et la plus simple est d'ajouter la
ContentControl
élément:Et après que l'ensemble de la
Content
la propriété de ce que le contrôle de votre modèle de vue, et la vue correspondante sera chargé et applique automatiquement:Mais je préfère utiliser un autre moyen sans datatemplates:
Construire votre VS2010 solution, alors, allez à votre MainWindow du XAML.
Sur la gauche, il y a une barre d'outils avec le bouton "boîte à outils"
De l'ouvrir, il contient tous les contrôles WPF vous pouvez ajouter à votre INTERFACE utilisateur
Votre UserControl doit apparaître en haut de la liste (dans une catégorie, probablement nommé "MVVM Contrôles"), il suffit de drag&drop à votre INTERFACE utilisateur 🙂