MailFileEditor Klass

Definition

Tillhandahåller ett användargränssnitt för att välja och redigera ett e-postfilnamn för en egenskap vid designtillfället.

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

Exempel

Följande kodexempel visar hur du associerar en instans av MailFileEditor klassen med en egenskap som finns i en anpassad kontroll. När kontrollegenskapen redigeras på designytan MailFileEditor tillhandahåller klassen användargränssnittet för att välja och redigera ett e-postfilnamn för egenskapsvärdet.

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

Kommentarer

Klassen MailFileEditor är ett UITypeEditor objekt som kan användas vid designtillfället för att välja och redigera ett e-postfilnamn som en sträng och tilldela strängen till en kontrollegenskap. Kontrollen använder EmbeddedMailObject till exempel MailFileEditor klassen vid designtillfället för att ange värdet för Path egenskapen.

Använd attributet EditorAttribute för att associera MailFileEditor med en egenskap. När den associerade egenskapen redigeras på designytan anropar EditValue designervärden metoden. Metoden EditValue visar en dialogruta för att välja ett e-postfilnamn från en filtrerad lista med filer och returnerar det filnamn som användaren har valt. Metoden GetEditStyle anger visningsformatet för användargränssnittet.

Härled en klass från MailFileEditor för att definiera en anpassad redigerare för en e-postfilnamnsegenskap. En härledd klass kan till exempel åsidosätta EditValue metoden och visa en OpenFileDialog instans med ett anpassat e-postfilfilter eller en rubrik.

Konstruktorer

Name Description
MailFileEditor()

Initierar en ny instans av MailFileEditor klassen.

Egenskaper

Name Description
Caption

Hämtar bildtexten för redigeringsdialogrutan.

Filter

Hämtar filfiltersträngen för dialogrutan (till exempel "*.txt").

IsDropDownResizable

Hämtar ett värde som anger om listruteredigerare ska kunna ändras av användaren.

(Ärvd från UITypeEditor)
Options

Hämtar de alternativ som URL-byggaren ska använda.

(Ärvd från UrlEditor)

Metoder

Name Description
EditValue(IServiceProvider, Object)

Redigerar värdet för det angivna objektet med hjälp av redigeringsformatet som anges av GetEditStyle() metoden.

(Ärvd från UITypeEditor)
EditValue(ITypeDescriptorContext, IServiceProvider, Object)

Redigerar värdet för det angivna objektet med hjälp av redigeringsformatet GetEditStyle(ITypeDescriptorContext) som tillhandahålls av metoden.

(Ärvd från UrlEditor)
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetEditStyle()

Hämtar redigeringsformatet som används av EditValue(IServiceProvider, Object) metoden.

(Ärvd från UITypeEditor)
GetEditStyle(ITypeDescriptorContext)

Hämtar metodens redigeringsformat EditValue(ITypeDescriptorContext, IServiceProvider, Object) .

(Ärvd från UrlEditor)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetPaintValueSupported()

Anger om den här redigeraren har stöd för att måla en representation av ett objekts värde.

(Ärvd från UITypeEditor)
GetPaintValueSupported(ITypeDescriptorContext)

Anger om den angivna kontexten stöder målning av en representation av ett objekts värde i den angivna kontexten.

(Ärvd från UITypeEditor)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
PaintValue(Object, Graphics, Rectangle)

Målar en representation av värdet för det angivna objektet till den angivna arbetsytan.

(Ärvd från UITypeEditor)
PaintValue(PaintValueEventArgs)

Målar en representation av värdet för ett objekt med hjälp av den angivna PaintValueEventArgs.

(Ärvd från UITypeEditor)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för

Se även