MailFileEditor Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia interfejs użytkownika do wybierania i edytowania nazwy pliku poczty dla właściwości w czasie projektowania.
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
- Dziedziczenie
Przykłady
W poniższym przykładzie kodu pokazano, jak skojarzyć wystąpienie MailFileEditor klasy z właściwością zawartą w kontrolce niestandardowej. Gdy właściwość kontrolki jest edytowana na powierzchni projektowej, MailFileEditor klasa udostępnia interfejs użytkownika do wybierania i edytowania nazwy pliku poczty dla wartości właściwości.
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
Uwagi
Klasa MailFileEditor jest obiektem UITypeEditor , którego można użyć w czasie projektowania, aby wybrać i edytować nazwę pliku poczty jako ciąg, a następnie przypisać ciąg do właściwości kontrolki. Na przykład kontrolka EmbeddedMailObject używa MailFileEditor klasy w czasie projektowania, aby ustawić wartość Path właściwości.
Użyj atrybutu EditorAttribute , aby skojarzyć właściwość MailFileEditor z właściwością. Gdy skojarzona właściwość jest edytowana na powierzchni projektowej, host projektanta wywołuje metodę EditValue . Metoda EditValue wyświetla okno dialogowe służące do wybierania nazwy pliku poczty z filtrowanej listy plików i zwraca nazwę pliku wybraną przez użytkownika. Metoda GetEditStyle wskazuje styl wyświetlania interfejsu użytkownika.
Utwórz klasę z MailFileEditor klasy , aby zdefiniować edytor niestandardowy dla właściwości nazwy pliku poczty. Na przykład klasa pochodna może zastąpić metodę EditValue i wyświetlić OpenFileDialog wystąpienie z niestandardowym filtrem lub tytułem pliku poczty.
Konstruktory
MailFileEditor() |
Inicjuje nowe wystąpienie klasy MailFileEditor. |
Właściwości
Caption |
Pobiera podpis okna dialogowego edytora. |
Filter |
Pobiera ciąg filtru pliku dla okna dialogowego (na przykład "*.txt"). |
IsDropDownResizable |
Pobiera wartość wskazującą, czy edytory listy rozwijanej powinny być zmienialne przez użytkownika. (Odziedziczone po UITypeEditor) |
Options |
Pobiera opcje konstruktora adresów URL do użycia. (Odziedziczone po UrlEditor) |
Metody
EditValue(IServiceProvider, Object) |
Edytuje wartość określonego obiektu przy użyciu stylu edytora wskazanego przez metodę GetEditStyle() . (Odziedziczone po UITypeEditor) |
EditValue(ITypeDescriptorContext, IServiceProvider, Object) |
Edytuje wartość określonego obiektu przy użyciu stylu edytora dostarczonego przez metodę GetEditStyle(ITypeDescriptorContext) . (Odziedziczone po UrlEditor) |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetEditStyle() |
Pobiera styl edytora używany przez metodę EditValue(IServiceProvider, Object) . (Odziedziczone po UITypeEditor) |
GetEditStyle(ITypeDescriptorContext) |
Pobiera styl edycji EditValue(ITypeDescriptorContext, IServiceProvider, Object) metody. (Odziedziczone po UrlEditor) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetPaintValueSupported() |
Wskazuje, czy ten edytor obsługuje malowanie reprezentacji wartości obiektu. (Odziedziczone po UITypeEditor) |
GetPaintValueSupported(ITypeDescriptorContext) |
Wskazuje, czy określony kontekst obsługuje malowanie reprezentacji wartości obiektu w określonym kontekście. (Odziedziczone po UITypeEditor) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
PaintValue(Object, Graphics, Rectangle) |
Maluje reprezentację wartości określonego obiektu na określoną kanwę. (Odziedziczone po UITypeEditor) |
PaintValue(PaintValueEventArgs) |
Maluje reprezentację wartości obiektu przy użyciu określonego PaintValueEventArgsobiektu . (Odziedziczone po UITypeEditor) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |