XmlDataFileEditor Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет пользовательский интерфейс времени разработки для выбора файла XML-данных.
public ref class XmlDataFileEditor : System::Web::UI::Design::UrlEditor
public class XmlDataFileEditor : System.Web.UI.Design.UrlEditor
type XmlDataFileEditor = class
inherit UrlEditor
Public Class XmlDataFileEditor
Inherits UrlEditor
- Наследование
Примеры
В следующем примере кода показано, как связать экземпляр XmlDataFileEditor класса со свойством, содержащимся в пользовательском элементе управления. Когда свойство элемента управления редактируется в области конструктора, XmlDataFileEditor класс предоставляет пользовательский интерфейс для выбора и изменения имени XML-файла для значения свойства.
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;
using System.IO;
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 XML data file name property. Indicate that the
// property can be edited at design-time with the XmlDataFileEditor class.
[EditorAttribute(typeof(System.Web.UI.Design.XmlDataFileEditor),
typeof(System.Drawing.Design.UITypeEditor))]
public string XmlFileName
{
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 (File.Exists(_filename))
{
DateTime lastChangedStamp = 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
Imports System.IO
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 XML data file name property. Indicate that the
' property can be edited at design-time with the XmlDataFileEditor class.
<EditorAttribute(GetType(System.Web.UI.Design.XmlDataFileEditor), _
GetType(System.Drawing.Design.UITypeEditor))> _
Public Property XmlFileName() 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 File.Exists(_filename) Then
Dim lastChangedStamp As DateTime
lastChangedStamp = 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
Комментарии
Объект XmlDataFileEditor используется во время разработки для выбора и изменения URL-адреса XML-файла данных (.xml), а затем присваивает URL-адрес свойству элемента управления. Например, XmlDataSource элемент управления использует XmlDataFileEditor класс во время разработки для задания значения DataFile свойства.
EditorAttribute Используйте атрибут, чтобы связать XmlDataFileEditor его со свойством. Когда связанное свойство редактируется в рабочей области конструктора, узел конструктора EditValue вызывает метод. Метод EditValue использует BuildUrl метод, который, в свою очередь, отображает пользовательский интерфейс для выбора URL-адреса, а затем возвращает URL-адрес, выбранный пользователем. Метод GetEditStyle указывает стиль отображения пользовательского интерфейса.
Наследуйте класс от XmlDataFileEditor определяемого пользовательского редактора для свойства данных XML. Например, производный класс может переопределить EditValue метод, а затем вызвать BuildUrl метод с помощью пользовательского Filter или Caption значения.
Конструкторы
XmlDataFileEditor() |
Инициализирует новый экземпляр класса XmlDataFileEditor. |
Свойства
Caption |
Возвращает заголовок, отображаемый в диалоговом окне выбора. |
Filter |
Возвращает варианты фильтра URL-адреса для редактора, используемого для фильтрации элементов, появляющихся в диалоговом окне выбора URL-адреса. |
IsDropDownResizable |
Возвращает значение, указывающее, должен ли пользователь иметь возможность изменять размер редакторов с раскрывающимися списками. (Унаследовано от UITypeEditor) |
Options |
Возвращает параметры для использования построителем URL-адресов. (Унаследовано от UrlEditor) |
Методы
EditValue(IServiceProvider, Object) |
Изменяет значение заданного объекта, используя стиль редактирования, определенного при помощи метода GetEditStyle(). (Унаследовано от UITypeEditor) |
EditValue(ITypeDescriptorContext, IServiceProvider, Object) |
Изменяет значение заданного объекта с использованием стиля редактирования, предоставленного методом GetEditStyle(ITypeDescriptorContext). (Унаследовано от UrlEditor) |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetEditStyle() |
Получает стиль редактирования, используемый методом EditValue(IServiceProvider, Object). (Унаследовано от UITypeEditor) |
GetEditStyle(ITypeDescriptorContext) |
Возвращает стиль редактирования метода EditValue(ITypeDescriptorContext, IServiceProvider, Object). (Унаследовано от UrlEditor) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetPaintValueSupported() |
Указывает, поддерживает ли этот редактор визуальное представление значения объекта. (Унаследовано от UITypeEditor) |
GetPaintValueSupported(ITypeDescriptorContext) |
Указывает, поддерживает ли указанный контекст визуальное представление значения объекта в пределах определенного контекста. (Унаследовано от UITypeEditor) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
PaintValue(Object, Graphics, Rectangle) |
Рисует представление значения указанного объекта на заданном холсте. (Унаследовано от UITypeEditor) |
PaintValue(PaintValueEventArgs) |
Рисует представление значения объекта с помощью указанного аргумента PaintValueEventArgs. (Унаследовано от UITypeEditor) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |