Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Certains contrôles dépendants des données, tels que ListView, ListBoxet DataGrid, sont difficiles à visualiser sans données. Dans cet article, nous allons examiner une nouvelle approche qui permet aux développeurs qui travaillent sur des projets .NET Core Windows Presentation Foundation (WPF) ou WPF .NET Framework avec le Concepteur XAML dans Visual Studio d’activer des exemples de données dans ces contrôles.
Exigences
La fonctionnalité Exemple de données nécessite la version de Visual Studio 2019 16.10 ou version ultérieure. La fonctionnalité prend en charge les projets de bureau Windows qui ciblent WPF pour .NET Core ou .NET Framework lorsque vous utilisez le nouveau concepteur.
Notions de base de la fonctionnalité Exemples de données
La fonctionnalité Exemple de données est destinée uniquement à la visualisation au moment du design. Il apparaît uniquement dans le concepteur XAML, et non dans l’application en cours d’exécution. À ce titre, elle est appliquée à la version au moment du design de la ItemsSource propriété d:ItemsSource.
Les données d’échantillon ont besoin de l’espace de noms au moment du design pour fonctionner.
Remarque
Pour en savoir plus sur les propriétés au moment du design dans XAML, consultez Propriétés au moment du design XAML.
Pour commencer, ajoutez les lignes de code suivantes à l’en-tête de votre document XAML s’ils ne sont pas déjà présents :
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Après avoir ajouté les espaces de noms, vous pouvez utiliser d:ItemsSource="{d:SampleData}" pour activer les exemples de données dans votre contrôle ListView, Listbox ou DataGrid. Par exemple:
<DataGrid d:ItemsSource="{d:SampleData}"/>
Dans cet exemple, sans d:ItemsSource="{d:SampleData}", le Concepteur XAML affiche une grille de données vide. Au lieu de cela, avec d:SampleData, il affiche désormais des exemples de données par défaut générés.
Par défaut, cinq éléments sont affichés. Toutefois, vous pouvez utiliser la propriété ItemCount pour spécifier le nombre d’éléments à afficher. Par exemple : d:ItemsSource="{d:SampleData ItemCount=2}".
Exemples de données avec des modèles de données
La fonctionnalité Exemple de données fonctionne pour les contrôles ListBox, ListViewou DataGrid lorsque vous utilisez des modèles de données. La fonctionnalité analyse le contrôle DataTemplate et tente de générer les données appropriées.
Les exemples de données sont générés uniquement pour les éléments des modèles de données qui utilisent des liaisons. Des exemples de données sont générés même si les liaisons n’ont pas encore de source. Par exemple:
<ListView d:ItemsSource="{d:SampleData ItemCount=3}">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Width="50" Source="{Binding ProfilePicture}"/>
<StackPanel Orientation="Vertical">
<TextBlock Text="{Binding FirstName}" Margin="5"/>
<Label Content="{Binding LastName}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Exemples de données avec actions suggérées
Pour activer ou désactiver facilement des données d'exemple pour un contrôle depuis le concepteur, vous pouvez utiliser la fonctionnalité Actions suggérées. Actions suggérées est une ampoule sur le concepteur qui s’affiche en haut à droite quand vous sélectionnez un contrôle. Vous pouvez activer des exemples de données en sélectionnant votre contrôle, en sélectionnant l’ampoule, puis en sélectionnant Afficher les exemples de données. Par exemple:
Exemples de données avec l’interface IValueConverter
La fonctionnalité Sample Data ne prend pas entièrement en charge les convertisseurs ni l’interface IValueConverter. Toutefois, vous pouvez faire en sorte qu'il fonctionne en effectuant une ou les deux opérations suivantes :
- Assurez-vous que votre fonction
Convertpeut gérer un scénario où la valeur est déjà votre type cible. - Implémentez la fonction
ConvertBackqui convertit votre valeur en type d’origine.
Dépannage
Si votre exemple de données n’affiche rien ou ne parvient pas à afficher le type correct, vous pouvez essayer d’actualiser le concepteur ou de fermer et de rouvrir la page.
Si vous rencontrez un problème qui n’est pas répertorié dans cette section ou qui ne peut pas être résolu en actualisant la page, veuillez nous informer à l’aide de l’outil Signaler un problème.