Partager via


MailFileEditor Classe

Définition

Fournit une interface utilisateur pour sélectionner et modifier un nom de fichier de courrier pour une propriété au moment du design.

public ref class MailFileEditor : System::Web::UI::Design::UrlEditor
public class MailFileEditor : System.Web.UI.Design.UrlEditor
type MailFileEditor = class
    inherit UrlEditor
Public Class MailFileEditor
Inherits UrlEditor
Héritage
MailFileEditor

Exemples

L’exemple de code suivant montre comment associer une instance de la MailFileEditor classe à une propriété contenue dans un contrôle personnalisé. Lorsque la propriété de contrôle est modifiée dans l’aire de conception, la MailFileEditor classe fournit l’interface utilisateur pour sélectionner et modifier un nom de fichier de messagerie pour la valeur de la propriété.

using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.Design.WebControls;
using System.Web.UI.WebControls;

namespace ControlDesignerSamples.CS
{
    // Define a simple text control, derived from the 
    // System.Web.UI.WebControls.Label class.
    [
        Designer(typeof(TextControlDesigner))
    ]
    public class SimpleTextControl : Label
    {
        // Define a private member to store the file name value in the control.
        private string _filename = "";
        private string _internalText = "";

        // Define the public file name property.  Indicate that the
        // property can be edited at design-time with the MailFileEditor class.
        [EditorAttribute(typeof(System.Web.UI.Design.MailFileEditor), 
                         typeof(System.Drawing.Design.UITypeEditor))]
        public string MailFileName
        {
            get
            {
                return _filename;
            }
            set
            {
                _filename = value;
            }
        }

        // Define a property that returns the timestamp
        // for the selected file.
        public string LastChanged
        {
            get
            {
                if ((_filename != null) && (_filename.Length > 0))
                {
                    if (System.IO.File.Exists(_filename))
                    {
                        DateTime lastChangedStamp = System.IO.File.GetLastWriteTime(_filename);
                        return lastChangedStamp.ToLongDateString();
                    }
                }
                return "";
            }
        }

        // Override the control Text property, setting the default
        // text to the LastChanged string value for the selected
        // file name.  If the file name has not been set in the
        // design view, then default to an empty string.
        public override string Text
        {
            get
            {
                if ((_internalText == "") && (LastChanged.Length > 0))
                {
                    // If the internally stored value hasn't been set,
                    // and the file name property has been set,
                    // return the last changed timestamp for the file.
                    _internalText = LastChanged;
                } 
                return _internalText;
            }

            set
            {
                if ((value != null) && (value.Length > 0))
                {
                    _internalText = value;
                }
                else {
                    _internalText = "";
                }
            }
        }
    }
}

Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Web.UI
Imports System.Web.UI.Design
Imports System.Web.UI.Design.WebControls
Imports System.Web.UI.WebControls

Namespace ControlDesignerSamples.VB


    ' Define a simple text control, derived from the 
    ' System.Web.UI.WebControls.Label class.

    <Designer(GetType(TextControlDesigner))> _
    Public Class SimpleTextControl
        Inherits Label

        ' Define a private member to store the file name value in the control.
        Private _filename As String = ""
        Private _internalText As String = ""

        ' Define the public mail file name property.  Indicate that the
        ' property can be edited at design-time with the MailFileEditor class.
        <EditorAttribute(GetType(System.Web.UI.Design.MailFileEditor), _
                         GetType(System.Drawing.Design.UITypeEditor))> _
        Public Property MailFileName() As String
            Get
                Return _filename
            End Get

            Set(ByVal value As String)
                _filename = value
            End Set
        End Property

        ' Define a property that returns the timestamp
        ' for the selected file.
        Public ReadOnly Property LastChanged() As String
            Get
                If Not _filename Is Nothing AndAlso _filename.Length > 0 Then
                    If System.IO.File.Exists(_filename) Then
                        Dim lastChangedStamp As DateTime
                        lastChangedStamp = System.IO.File.GetLastWriteTime(_filename)
                        Return lastChangedStamp.ToLongDateString()
                    End If
                End If

                Return String.Empty

            End Get

        End Property

        ' Override the control Text property, setting the default
        ' text to the LastChanged string value for the selected
        ' file name.  If the file name has not been set in the
        ' design view, then default to an empty string.
        Public Overrides Property Text() As String
            Get
                If _internalText.Length = 0 And LastChanged.Length > 0 Then
                    ' If the internally stored value hasn't been set,
                    ' and the file name property has been set,
                    ' return the last changed timestamp for the file.

                    _internalText = LastChanged
                End If
                Return _internalText
            End Get

            Set(ByVal value As String)
                If Not value Is Nothing AndAlso value.Length > 0 Then
                    _internalText = value
                Else
                    _internalText = String.Empty
                End If

            End Set
        End Property

    End Class
End Namespace

Remarques

La MailFileEditor classe est un UITypeEditor objet qui peut être utilisé au moment du design pour sélectionner et modifier un nom de fichier de messagerie en tant que chaîne et affecter la chaîne à une propriété de contrôle. Par exemple, le EmbeddedMailObject contrôle utilise la MailFileEditor classe au moment du design pour définir la valeur de la Path propriété.

Utilisez l’attribut EditorAttribute pour associer la MailFileEditor propriété. Lorsque la propriété associée est modifiée dans l’aire de conception, l’hôte du concepteur appelle la EditValue méthode. La EditValue méthode affiche une boîte de dialogue permettant de sélectionner un nom de fichier de messagerie dans une liste filtrée de fichiers et retourne le nom de fichier sélectionné par l’utilisateur. La GetEditStyle méthode indique le style d’affichage de l’interface utilisateur.

Dérivez une classe de l’éditeur MailFileEditor personnalisé pour une propriété de nom de fichier de messagerie. Par exemple, une classe dérivée peut remplacer la EditValue méthode et afficher une OpenFileDialog instance avec un filtre ou un titre de fichier de messagerie personnalisé.

Constructeurs

MailFileEditor()

Initialise une nouvelle instance de la classe MailFileEditor.

Propriétés

Caption

Obtient la légende de la boîte de dialogue de l'éditeur.

Filter

Obtient la chaîne de filtre de fichiers pour la boîte de dialogue (telle que "* .txt").

IsDropDownResizable

Obtient une valeur indiquant si les éditeurs déroulants doivent être redimensionnables par l’utilisateur.

(Hérité de UITypeEditor)
Options

Obtient les options à utiliser par le générateur d'URL.

(Hérité de UrlEditor)

Méthodes

EditValue(IServiceProvider, Object)

Modifie la valeur de l'objet spécifié à l'aide du style d'éditeur fourni par la méthode GetEditStyle().

(Hérité de UITypeEditor)
EditValue(ITypeDescriptorContext, IServiceProvider, Object)

Modifie la valeur de l'objet spécifié à l'aide du style d'éditeur fourni par la méthode GetEditStyle(ITypeDescriptorContext).

(Hérité de UrlEditor)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetEditStyle()

Obtient le style de l'éditeur utilisé par la méthode EditValue(IServiceProvider, Object).

(Hérité de UITypeEditor)
GetEditStyle(ITypeDescriptorContext)

Obtient le style de modification de la méthode EditValue(ITypeDescriptorContext, IServiceProvider, Object).

(Hérité de UrlEditor)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetPaintValueSupported()

Indique si cet éditeur permet de peindre une représentation de la valeur d'un objet.

(Hérité de UITypeEditor)
GetPaintValueSupported(ITypeDescriptorContext)

Indique si le contexte spécifié permet de peindre une représentation de la valeur d'un objet dans le contexte spécifié.

(Hérité de UITypeEditor)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
PaintValue(Object, Graphics, Rectangle)

Peint une représentation de la valeur de l'objet spécifié sur la toile spécifiée.

(Hérité de UITypeEditor)
PaintValue(PaintValueEventArgs)

Peint une représentation de la valeur d'un objet à l'aide du PaintValueEventArgs spécifié.

(Hérité de UITypeEditor)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi