using System.Windows; using System.Windows.Controls; namespace Developpez.Dotnet.Windows.Controls { /// /// Représente un champ de formulaire (contrôle FormView) /// [TemplatePart(Name = "PART_Header", Type = typeof(FrameworkElement))] [TemplatePart(Name = "PART_Display", Type = typeof(FrameworkElement))] [TemplatePart(Name = "PART_Editor", Type = typeof(FrameworkElement))] public class FormField : Control { static FormField() { DefaultStyleKeyProperty.OverrideMetadata(typeof(FormField), new FrameworkPropertyMetadata(typeof(FormField))); } /// /// Identifiant de la propriété Header /// public static readonly DependencyProperty HeaderProperty = DependencyProperty.Register("Header", typeof(object), typeof(FormField), new UIPropertyMetadata(null)); /// /// Identifiant de la propriété EditorTemplate /// public static readonly DependencyProperty EditorTemplateProperty = DependencyProperty.Register("EditorTemplate", typeof(DataTemplate), typeof(FormField), new UIPropertyMetadata(null)); /// /// Identifiant de la propriété DisplayTemplate /// public static readonly DependencyProperty DisplayTemplateProperty = DependencyProperty.Register("DisplayTemplate", typeof(DataTemplate), typeof(FormField), new UIPropertyMetadata(null)); /// /// Obtient ou définit l'en-tête du champ du formulaire. /// public object Header { get { return GetValue(HeaderProperty); } set { SetValue(HeaderProperty, value); } } /// /// Obtient ou définit le modèle à utiliser pour l'édition du champ /// public DataTemplate EditorTemplate { get { return (DataTemplate)GetValue(EditorTemplateProperty); } set { SetValue(EditorTemplateProperty, value); } } /// /// Obtient ou définit le modèle à utiliser pour l'affichage du champ /// public DataTemplate DisplayTemplate { get { return (DataTemplate)GetValue(DisplayTemplateProperty); } set { SetValue(DisplayTemplateProperty, value); } } } }