Partager des exemples d'utilisation de PART_Editor

零下一度
Libérer: 2017-06-23 15:56:41
original
1705 Les gens l'ont consulté

1. Avant-propos

 Au quotidien life Dans le développement d'interfaces, nous utilisons principalement le modèle MVVM pour le développement. Normalement, le ItemsSource d'un PropertyGridControl ou DataGrid est configuré,

, puis chaque colonne est liée à un champ dans un ItemsSource et peut ensuite s'exécuter.

Mais il existe une autre situation :

Supposons une interface Temp.xaml, son ViewModel est TempViewModel.cs ;

Il existe un PropertyGridControl ItemsSource lié à ObservableCollection; > Une PropertyDefinition dans PropertyGridControl doit remplacer le modèle, et les informations qu'elle lie ne sont pas seulement un certain champ dans Model

,

Il peut également inclure plusieurs champs dans le Model

, ou même

quelques autres informations dans le TempViewModel Comment dois-je opérer à ce moment-là ?

2. Exemples

Temp.xaml :

 <services:DockablePane.Resources>
        <ResourceDictionary>
             <DataTemplate x:Key="EditTemplate">
                <special:SpEdit x:Name="PART_Editor"/>  //这里是关键!!!!!!!!!!!!!!!
            </DataTemplate>
        </ResourceDictionary>
 </services:DockablePane.Resources>



<dxprg:PropertyGridControl 
                Margin="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"SelectedObjects="{Binding Infos}" ShowProperties="WithPropertyDefinitions"ShowDescriptionIn="ToolTipAndPanel" ShowCategories="True" ExpandCategoriesWhenSelectedObjectChanged="True"ShowMenuButtonInRows="False" ShowToolPanel="False" ShowSearchBox="False" SortMode="Definitions">

 <dxprg:PropertyGridControl.PropertyDefinitions>
                        <!--通用-->
                        <dxprg:PropertyDefinition IsReadOnly="True" Path="Code"/>
                        <dxprg:PropertyDefinition IsReadOnly="True" Path="AProperty"/>
                        <dxprg:PropertyDefinition Path="BProperty"/>
                        <dxprg:PropertyDefinition Path="CProperty"/>
                        <dxprg:PropertyDefinition Path="DProperty"/>
                        <dxprg:PropertyDefinition Path="EProperty"  ContentTemplate="{StaticResource EditTemplate}"/>
 </dxprg:PropertyGridControl.PropertyDefinitions>
</dxprg:PropertyGridControl>
Copier après la connexion
Ici, nous remplaçons le formulaire dans le DataTemplate Le nom est :

PART_Editor

Ce nom est très important et ne peut être changé en autre chose.

De cette façon, nous pouvons appeler toutes les informations de TempViewModel sous la forme

SpEdit

, car à ce moment TempViewModel Sur une propriété de qui a été affectée au DataContext de SpEdit, la situation possible de est la suivante suit :

SpEdit.xaml.cs:

De cette façon, nous passons le ViewModel de Le _sourceData de Temp.xaml SpEdit est donné.
var source = this.DataContext as RowData;if (source != null)
     _sourceData = (source.Definition.DataContext) as VM;
Copier après la connexion

3.Résumé

  

Cet article décrit principalement comment obtenir les informations ViewModel dans l'interface utilisateur source dans l'interface de réécriture. PART_Editor est une méthode cachée très pratique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!