次の方法で共有


XhtmlTextWriter.IsValidFormAttribute(String) メソッド

定義

XHTML 属性をチェックして、<form> 要素の開始タグにその XHTML 属性をレンダリングできるかどうかを確認します。

public:
 override bool IsValidFormAttribute(System::String ^ attributeName);
public override bool IsValidFormAttribute (string attributeName);
override this.IsValidFormAttribute : string -> bool
Public Overrides Function IsValidFormAttribute (attributeName As String) As Boolean

パラメーター

attributeName
String

確認対象の属性名。

戻り値

Boolean

属性を true 要素に適用できる場合は <form>。それ以外の場合は false

次のコード例は、カスタム Label コントロールと、コントロールの内容を XHTML としてレンダリングするアダプターを作成する大きな例の一部です。

このコード例では、名前付きの attTest ブール型変数を作成し、パラメーター値 "style" を使用してメソッドを呼び出 IsValidFormAttribute した結果の戻り値に設定する方法を示します。 メソッドが返trueされたIsValidFormAttribute場合、コントロールに関連付けられているスタイルは、メソッドとHtmlTextWriter.ExitStyleメソッドをHtmlTextWriter.EnterStyle使用してレンダリングされます。 値falseが指定されているattTest場合、スタイルはレンダリングされません。 代わりに、ページにはコントロールのテキスト、 <br/> メソッドによって WriteBreak レンダリングされる要素、およびコントロールの XHTML コンテンツが条件付きでレンダリングされたことをユーザーに通知するテキスト文字列が表示されます。

このコード例は、XhtmlTextWriter クラスのために提供されている大規模な例の一部です。

protected override void Render(HtmlTextWriter writer)
{
    // Create an instance of the XhtmlTextWriter class,
    // named w, and cast the HtmlTextWriter passed 
    // in the writer parameter to w.
    XhtmlTextWriter w = new XhtmlTextWriter(writer);

    // Create a string variable, named value, to hold
    // the control's Text property value.
    String value = Control.Text;

    // Create a Boolean variable, named attTest,
    // to test whether the Style attribute is 
    // valid in the page that the control is
    // rendered to.
    Boolean attTest = w.IsValidFormAttribute("style");

    // Check whether attTest is true or false.
    // If true, a style is applied to the XHTML
    // content. If false, no style is applied.
    if (attTest)
        w.EnterStyle(Control.ControlStyle);

    // Write the Text property value of the control,
    // a <br> element, and a string. Consider encoding the value using WriteEncodedText.
    w.Write(value);
    w.WriteBreak();
    w.Write("This control conditionally rendered its styles for XHTML.");

    // Check whether attTest is true or false.
    // If true, the XHTML style is closed.
    // If false, nothing is rendered.
    if (attTest)
        w.ExitStyle(Control.ControlStyle);
}
' Override the Render method.
Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)

    ' Create an instance of the XhtmlTextWriter class, 
    ' named w, and cast the HtmlTextWriter passed 
    ' in the writer parameter to w.
    Dim w As XhtmlTextWriter = New XhtmlTextWriter(writer)

    ' Create a string variable, named value, to hold
    ' the control's Text property value.
    Dim value As String = Control.Text

    ' Create a Boolean variable, named attTest,
    ' to test whether the Style attribute is 
    ' valid in the page that the control is
    ' rendered to.
    Dim attTest As Boolean = w.IsValidFormAttribute("style")

    ' Check whether attTest is true or false.
    ' If true, a style is applied to the XHTML
    ' content. If false, no style is applied.
    If (attTest = True) Then
        w.EnterStyle(Control.ControlStyle)
    End If

    ' Write the Text property value of the control,
    ' a <br> element, and a string. Consider encoding the value using WriteEncodedText.
    w.Write(value)
    w.WriteBreak()
    w.Write("This control conditionally rendered its styles for XHTML.")

    ' Check whether attTest is true or false.
    ' If true, the XHTML style is closed.
    ' If false, nothing is rendered.
    If (attTest = True) Then
        w.ExitStyle(Control.ControlStyle)
    End If

End Sub

注釈

このメソッドは、要求するデバイスの XHTML ドキュメントの種類でサポートされているかどうかに応じて、属性を条件付きでレンダリングする場合に便利です。

適用対象