TextBox.AddParsedSubObject(Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
リテラル コントロールだけを Text プロパティとして追加できるようにオーバーライドされます。
protected:
override void AddParsedSubObject(System::Object ^ obj);
protected override void AddParsedSubObject (object obj);
override this.AddParsedSubObject : obj -> unit
Protected Overrides Sub AddParsedSubObject (obj As Object)
パラメーター
例外
obj
が LiteralControl 型ではありません。
例
次のコード例では、カスタム サーバー コントロールの メソッドをオーバーライド AddParsedSubObject して、解析されたオブジェクトがコントロールの場合は常にプロパティを解析対象オブジェクトのプロパティに設定 Text し、それ以外の Text
場合は Literal 例外をスローするようにする方法を示します。
重要
この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。 詳細については、「スクリプトによる攻略の概要」を参照してください。
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" 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 TextBox - AddParsedSubObject - C# Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom TextBox - AddParsedSubObject - C# Example</h3>
<aspSample:CustomTextBoxAddParsedSubObject
id="TextBox1"
runat="server">Hello World!
</aspSample:CustomTextBoxAddParsedSubObject>
</form>
</body>
</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 TextBox - AddParsedSubObject - VB.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom TextBox - AddParsedSubObject - VB.NET Example</h3>
<aspSample:CustomTextBoxAddParsedSubObject id="TextBox1"
runat="server">Hello World!</aspSample:CustomTextBoxAddParsedSubObject>
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomTextBoxAddParsedSubObject : System.Web.UI.WebControls.TextBox
{
protected override void AddParsedSubObject(object obj)
{
// If the object is a LiteralControl, then set this control's Text property.
if (obj is System.Web.UI.LiteralControl)
{
this.Text = ((System.Web.UI.LiteralControl)obj).Text;
}
else
{
throw new System.Web.HttpException("You cannot have a child control of type " + obj.GetType().Name.ToString());
}
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomTextBoxAddParsedSubObject
Inherits System.Web.UI.WebControls.TextBox
Protected Overrides Sub AddParsedSubObject(ByVal obj As Object)
' If the object is a LiteralControl, then set this control's Text property.
If TypeOf obj Is System.Web.UI.LiteralControl Then
Me.Text = CType(obj, System.Web.UI.LiteralControl).Text
Else
Throw New System.Web.HttpException("You cannot have children controls of type " + obj.GetType().Name.ToString())
End If
End Sub
End Class
End Namespace
適用対象
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET