XsdSchemaFileEditor クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
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オブジェクトは、デザイン時に XML スキーマ定義ファイル (.xsd) の URL を選択および編集し、コントロール プロパティに URL を割り当てるために使用されます。
属性を EditorAttribute 使用して、プロパティに XsdSchemaFileEditor 関連付けます。 関連付けられたプロパティがデザイン サーフェイスで編集されると、デザイナー ホストはメソッドを EditValue 呼び出します。 このメソッドは EditValue 、このメソッドを BuildUrl 使用して、URL を選択するためのユーザー インターフェイスを表示し、ユーザーが選択した URL を返します。 このメソッドは GetEditStyle 、ユーザー インターフェイスの表示スタイルを示します。
クラスを XsdSchemaFileEditor 派生して、XML スキーマ URL プロパティのカスタム エディターを定義します。 たとえば、派生クラスはメソッドをEditValueオーバーライドし、カスタムFilterまたはCaption値をBuildUrl使用してメソッドを呼び出すことができます。
コンストラクター
XsdSchemaFileEditor() |
XsdSchemaFileEditor クラスの新しいインスタンスを初期化します。 |
プロパティ
Caption |
選択ダイアログ ボックスに表示するキャプションを取得します。 |
Filter |
URL 選択ダイアログ ボックスに表示されるアイテムにフィルターをかけるための、エディターの URL フィルター オプションを取得します。 |
IsDropDownResizable |
ユーザーがドロップダウン エディターのサイズを変更できるかどうかを示す値を取得します。 (継承元 UITypeEditor) |
Options |
使用する URL ビルダーのオプションを取得します。 (継承元 UrlEditor) |