Freigeben über


MailFileEditor Klasse

Definition

Stellt zur Entwurfszeit eine Benutzeroberfläche für das Auswählen und Bearbeiten eines E-Mail-Dateinamens für eine Eigenschaft bereit.

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
Vererbung
MailFileEditor

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie eine Instanz der MailFileEditor Klasse einer Eigenschaft zugeordnet wird, die in einem benutzerdefinierten Steuerelement enthalten ist. Wenn die Steuerelementeigenschaft auf der Entwurfsoberfläche bearbeitet wird, stellt die MailFileEditor Klasse die Benutzeroberfläche bereit, um einen E-Mail-Dateinamen für den Eigenschaftswert auszuwählen und zu bearbeiten.

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

Hinweise

Die MailFileEditor Klasse ist ein UITypeEditor Objekt, das zur Entwurfszeit verwendet werden kann, um einen E-Mail-Dateinamen als Zeichenfolge auszuwählen und zu bearbeiten und die Zeichenfolge einer Steuerelementeigenschaft zuzuweisen. Das Steuerelement verwendet beispielsweise EmbeddedMailObject die MailFileEditor Klasse zum Entwurfszeitpunkt, um den Wert der Path Eigenschaft festzulegen.

Verwenden Sie das Attribut, um die EditorAttribute MailFileEditor Eigenschaft zuzuordnen. Wenn die zugeordnete Eigenschaft in der Entwurfsoberfläche bearbeitet wird, ruft der Designerhost die EditValue Methode auf. Die EditValue Methode zeigt ein Dialogfeld zum Auswählen eines E-Mail-Dateinamens aus einer gefilterten Liste von Dateien an, und gibt den Vom Benutzer ausgewählten Dateinamen zurück. Die GetEditStyle Methode gibt den Anzeigestil der Benutzeroberfläche an.

Abgeleitet von einer Klasse, MailFileEditor die einen benutzerdefinierten Editor für eine E-Mail-Dateinameneigenschaft definiert. Beispielsweise kann eine abgeleitete Klasse die EditValue Methode außer Kraft setzen und eine OpenFileDialog Instanz mit einem benutzerdefinierten E-Mail-Dateifilter oder -titel anzeigen.

Konstruktoren

MailFileEditor()

Initialisiert eine neue Instanz der MailFileEditor-Klasse.

Eigenschaften

Caption

Ruft die Beschriftung für das Editor-Dialogfeld ab.

Filter

Ruft die Dateifilter-Zeichenfolge für das Dialogfeld (z. B. "* .txt") ab.

IsDropDownResizable

Ruft einen Wert ab, der angibt, ob Dropdowneditoren von den Benutzern in der Größe veränderbar sein sollten.

(Geerbt von UITypeEditor)
Options

Ruft die Optionen ab, die der URL-Generator verwenden soll.

(Geerbt von UrlEditor)

Methoden

EditValue(IServiceProvider, Object)

Bearbeitet den Wert des angegebenen Objekts, wobei der von der GetEditStyle()-Methode angegebene Editor-Stil verwendet wird.

(Geerbt von UITypeEditor)
EditValue(ITypeDescriptorContext, IServiceProvider, Object)

Bearbeitet den Wert des angegebenen Objekts, wobei der von der GetEditStyle(ITypeDescriptorContext)-Methode angegebene Editor-Stil verwendet wird.

(Geerbt von UrlEditor)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetEditStyle()

Ruft den von der EditValue(IServiceProvider, Object)-Methode verwendeten Editor-Stil ab.

(Geerbt von UITypeEditor)
GetEditStyle(ITypeDescriptorContext)

Ruft den Bearbeitungsstil der EditValue(ITypeDescriptorContext, IServiceProvider, Object)-Methode ab.

(Geerbt von UrlEditor)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetPaintValueSupported()

Gibt an, ob dieser Editor das Zeichnen einer Objektwertdarstellung unterstützt.

(Geerbt von UITypeEditor)
GetPaintValueSupported(ITypeDescriptorContext)

Gibt an, ob der angegebene Kontext das Zeichnen einer Objektwertdarstellung innerhalb des angegebenen Kontexts unterstützt.

(Geerbt von UITypeEditor)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
PaintValue(Object, Graphics, Rectangle)

Zeichnet eine Darstellung des Werts des angegebenen Objekts in den angegebenen Bereich.

(Geerbt von UITypeEditor)
PaintValue(PaintValueEventArgs)

Zeichnet die Darstellung eines Objektwerts mit dem angegebenen PaintValueEventArgs.

(Geerbt von UITypeEditor)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für

Siehe auch