XsdSchemaFileEditor Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет пользовательский интерфейс времени разработки для выбора файла определения XML-схемы.
public ref class XsdSchemaFileEditor : System::Web::UI::Design::UrlEditor
public class XsdSchemaFileEditor : System.Web.UI.Design.UrlEditor
type XsdSchemaFileEditor = class
inherit UrlEditor
Public Class XsdSchemaFileEditor
Inherits UrlEditor
- Наследование
Примеры
В следующем примере кода показано, как связать экземпляр XsdSchemaFileEditor класса со свойством, содержащимся в пользовательском элементе управления. Когда свойство элемента управления редактируется в области конструктора, XsdSchemaFileEditor класс предоставляет пользовательский интерфейс для выбора и изменения имени файла определения схемы 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 schema file property. Indicate that the
// property can be edited at design-time with the XsdSchemaFileEditor class.
[EditorAttribute(typeof(System.Web.UI.Design.XsdSchemaFileEditor),
typeof(System.Drawing.Design.UITypeEditor))]
public string SchemaFileName
{
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 XSD schema file name property. Indicate that the
' property can be edited at design-time with the XsdSchemaFileEditor class.
<EditorAttribute(GetType(System.Web.UI.Design.XsdSchemaFileEditor), _
GetType(System.Drawing.Design.UITypeEditor))> _
Public Property SchemaFileName() 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
Комментарии
Объект XsdSchemaFileEditor используется во время разработки для выбора и изменения URL-адреса файла определения схемы XML (XSD) и назначения URL-адреса свойству элемента управления.
EditorAttribute Используйте атрибут, чтобы связать XsdSchemaFileEditor его со свойством. Когда связанное свойство редактируется в рабочей области конструктора, узел конструктора EditValue вызывает метод. Метод EditValue использует BuildUrl метод, который, в свою очередь, отображает пользовательский интерфейс для выбора URL-адреса, а затем возвращает URL-адрес, выбранный пользователем. Метод GetEditStyle указывает стиль отображения пользовательского интерфейса.
Наследуйте класс от XsdSchemaFileEditor определения пользовательского редактора для свойства URL-адреса схемы XML. Например, производный класс может переопределить EditValue метод, а затем вызвать BuildUrl метод с помощью пользовательского Filter или Caption значения.
Конструкторы
XsdSchemaFileEditor() |
Инициализирует новый экземпляр класса XsdSchemaFileEditor. |
Свойства
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) |