このメソッドは,.NET Framework インフラストラクチャをサポートします。独自に作成したコードから直接使用するためのものではありません。
CustomValidator コントロールのプロパティを、クライアントに表示する出力ストリームに追加します。
名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文
'宣言
Protected Overrides Sub AddAttributesToRender ( _
writer As HtmlTextWriter _
)
'使用
Dim writer As HtmlTextWriter
Me.AddAttributesToRender(writer)
protected override void AddAttributesToRender (
HtmlTextWriter writer
)
protected:
virtual void AddAttributesToRender (
HtmlTextWriter^ writer
) override
protected void AddAttributesToRender (
HtmlTextWriter writer
)
protected override function AddAttributesToRender (
writer : HtmlTextWriter
)
適用できません。
パラメータ
- writer
クライアントに表示する出力ストリームが格納されている System.Web.UI.HtmlTextWriter。
使用例
カスタム サーバー コントロールの AddAttributesToRender メソッドをオーバーライドして、CustomValidator のエラー メッセージが常に太字で表示されるようにする方法を次のコード例に示します。
![]() |
---|
この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。詳細については、「スクリプトによる攻略の概要」を参照してください。 |
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom CustomValidator - AddAttributesToRender - VB.NET Example</title>
<script runat="server">
Sub CustomValidator1_ServerValidate(source As Object, args As ServerValidateEventArgs)
args.IsValid = False
Try
' Test whether the value entered into the text box is even or not.
Dim i As Integer = Integer.Parse(args.Value)
If (i Mod 2) = 0 Then
args.IsValid = True
End If
Catch
End Try
End Sub
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - AddAttributesToRender - VB.NET Example</h3>
<asp:Label id="Label1" runat="server" Text="Enter an even number:" AssociatedControlID="TextBox1" /><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorAddAttributesToRender id="Customvalidator1" runat="server" ControlToValidate="TextBox1" Display="Static" ErrorMessage="Not an even number!" OnServerValidate="CustomValidator1_ServerValidate" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
...
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomCustomValidatorAddAttributesToRender
Inherits System.Web.UI.WebControls.CustomValidator
Protected Overrides Sub AddAttributesToRender(ByVal writer As System.Web.UI.HtmlTextWriter)
' Show the CompareValidator's error message as bold.
writer.AddStyleAttribute(System.Web.UI.HtmlTextWriterStyle.FontWeight, "bold")
' Call the Base's AddAttributesToRender method.
MyBase.AddAttributesToRender(writer)
End Sub
End Class
End Namespace
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom CustomValidator - AddAttributesToRender - C# Example</title>
<script runat="server">
void CustomValidator1_ServerValidate(Object source, ServerValidateEventArgs args)
{
try
{
// Test whether the value entered into the text box is even.
int i = int.Parse(args.Value);
args.IsValid = ((i%2) == 0);
}
catch(Exception ex)
{
args.IsValid = false;
}
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - AddAttributesToRender - C# Example</h3>
<asp:Label id="Label1" runat="server"
Text="Enter an even number:" AssociatedControlID="TextBox1"/><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorAddAttributesToRender
id="Customvalidator1"
runat="server"
ControlToValidate="TextBox1"
Display="Static"
ErrorMessage="Not an even number!"
OnServerValidate="CustomValidator1_ServerValidate" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
...
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomCustomValidatorAddAttributesToRender : System.Web.UI.WebControls.CustomValidator
{
protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer)
{
// Show the CompareValidator's error message as bold.
writer.AddStyleAttribute(System.Web.UI.HtmlTextWriterStyle.FontWeight, "bold");
// Call the Base's AddAttributesToRender method.
base.AddAttributesToRender(writer);
}
}
}
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet" Assembly="Samples.AspNet.JSL" %>
<%@ Page Language="VJ#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom CustomValidator - AddAttributesToRender - VJ# Example</title>
<script runat="server">
void CustomValidator1_ServerValidate(Object source,
ServerValidateEventArgs args)
{
try {
// Test whether the value entered into the text box is even.
int i = Int32.Parse(args.get_Value());
args.set_IsValid((i%2) == 0);
}
catch(Exception ex) {
args.set_IsValid(false);
}
} //CustomValidator1_ServerValidate
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - AddAttributesToRender - VJ# Example</h3>
<asp:Label id="Label1" runat="server"
Text="Enter an even number:" AssociatedControlID="TextBox1" /><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorAddAttributesToRender
id="Customvalidator1"
runat="server"
ControlToValidate="TextBox1"
Display="Static"
ErrorMessage="Not an even number!"
OnServerValidate="CustomValidator1_ServerValidate" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
...
package Samples.AspNet;
public class CustomCustomValidatorAddAttributesToRender
extends System.Web.UI.WebControls.CustomValidator
{
protected void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer)
{
// Show the CompareValidator's error message as bold.
writer.AddStyleAttribute(System.Web.UI.HtmlTextWriterStyle.FontWeight,
"bold");
// Call the Base's AddAttributesToRender method.
super.AddAttributesToRender(writer);
} //AddAttributesToRender
} //CustomCustomValidatorAddAttributesToRender
プラットフォーム
Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition
Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。
バージョン情報
.NET Framework
サポート対象 : 3.0,2.0,1.1,1.0
参照
関連項目
CustomValidator クラス
CustomValidator メンバ
System.Web.UI.WebControls 名前空間