解析された子コントロールを HtmlSelect コントロールに追加します。
名前空間: System.Web.UI.HtmlControls
アセンブリ: System.Web (system.web.dll 内)
構文
'宣言
Protected Overrides Sub AddParsedSubObject ( _
obj As Object _
)
'使用
Dim obj As Object
Me.AddParsedSubObject(obj)
protected override void AddParsedSubObject (
Object obj
)
protected:
virtual void AddParsedSubObject (
Object^ obj
) override
protected void AddParsedSubObject (
Object obj
)
protected override function AddParsedSubObject (
obj : Object
)
適用できません。
パラメータ
- obj
追加する解析された子コントロール。
例外
例外の種類 | 条件 |
---|---|
obj パラメータによって指定された子コントロールの型は ListItem である必要があります。 |
解説
AddParsedSubObject メソッドは、解析された子コントロールを HtmlSelect コントロールに追加するために、ASP.NET によって使用されます。
使用例
カスタム サーバー コントロールの AddParsedSubObject メソッドをオーバーライドし、ListItem クラスのインスタンスが HtmlSelect の選択された項目のコレクションに追加されるかどうかを常に確認する方法を次のコード例に示します。
<%@ 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 HtmlSelect - AddParsedSubObject - VB.NET Example</title>
<script runat="server">
Sub HtmlInputButton1_ServerClick(sender As Object, e As EventArgs)
If HtmlSelect1.SelectedIndex >= 0 Then
If HtmlSelect1.Multiple = True Then
Div1.InnerHtml = "You selected:"
Dim i As Integer
For i = 0 To HtmlSelect1.Items.Count - 1
If HtmlSelect1.Items(i).Selected = True Then
Div1.InnerHtml += "<br /> " & HtmlSelect1.Items(i).Value
End If
Next i
Else
Div1.InnerHtml = "You selected " & HtmlSelect1.Value
End If
Else
Div1.InnerHtml = "You did not select an item."
End If
End Sub
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom HtmlSelect - AddParsedSubObject - VB.NET Example</h3>
<p>
<aspSample:CustomHtmlSelectAddParsedSubObject
id="HtmlSelect1"
name="HtmlSelect1"
runat="server">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
<option value="Option3">Option3</option>
</aspSample:CustomHtmlSelectAddParsedSubObject>
</p>
<p>
<input
id="HtmlInputButton1"
runat="server"
type="button"
onserverclick="HtmlInputButton1_ServerClick"
value="Select"
name="HtmlInputButton1" />
</p>
<br />
<div id="Div1" runat="server"
style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px" />
</form>
</body>
</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 HtmlSelect - AddParsedSubObject - C# Example</title>
<script runat="server">
void HtmlInputButton1_ServerClick(Object sender, EventArgs e)
{
if (HtmlSelect1.SelectedIndex >= 0)
{
if (HtmlSelect1.Multiple == true)
{
Div1.InnerHtml = "You selected:";
for (int i=0; i<=HtmlSelect1.Items.Count - 1; i++)
{
if (HtmlSelect1.Items[i].Selected == true)
{
Div1.InnerHtml += "<br /> " + HtmlSelect1.Items[i].Value;
}
}
}
else
{
Div1.InnerHtml = "You selected " + HtmlSelect1.Value;
}
}
else
{
Div1.InnerHtml = "You did not select an item.";
}
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom HtmlSelect - AddParsedSubObject - C# Example</h3>
<p>
<aspSample:CustomHtmlSelectAddParsedSubObject
id="HtmlSelect1"
name="HtmlSelect1"
runat="server">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
<option value="Option3">Option3</option>
</aspSample:CustomHtmlSelectAddParsedSubObject>
</p>
<p>
<input
id="HtmlInputButton1"
runat="server"
type="button"
onserverclick="HtmlInputButton1_ServerClick"
value="Select"
name="HtmlInputButton1" />
</p>
<br />
<div id="Div1" runat="server"
style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px" />
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.JSL.Controls" 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 HtmlSelect - AddParsedSubObject - VJ# Example</title>
<script runat="server">
void HtmlInputButton1_ServerClick(Object sender, EventArgs e)
{
if (HtmlSelect1.get_SelectedIndex() >= 0) {
if (HtmlSelect1.get_Multiple() == true) {
Div1.set_InnerHtml("You selected:");
for (int i=0; i<=HtmlSelect1.get_Items().get_Count() - 1; i++) {
if (HtmlSelect1.get_Items().get_Item(i).
get_Selected() == true) {
Div1.set_InnerHtml(Div1.get_InnerHtml()
+ "<br /> "
+ HtmlSelect1.get_Items().get_Item(i).get_Value());
}
}
}
else {
Div1.set_InnerHtml("You selected " + HtmlSelect1.get_Value());
}
}
else {
Div1.set_InnerHtml("You did not select an item.");
}
} //HtmlInputButton1_ServerClick
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom HtmlSelect - AddParsedSubObject - VJ# Example</h3>
<p>
<aspSample:CustomHtmlSelectAddParsedSubObject
id="HtmlSelect1"
name="HtmlSelect1"
runat="server">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
<option value="Option3">Option3</option>
</aspSample:CustomHtmlSelectAddParsedSubObject>
</p>
<p>
<input
id="HtmlInputButton1"
runat="server"
type="button"
onserverclick="HtmlInputButton1_ServerClick"
value="Select"
name="HtmlInputButton1" />
</p>
<br />
<div id="Div1" runat="server"
style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px" />
</form>
</body>
</html>
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomHtmlSelectAddParsedSubObject
Inherits System.Web.UI.HtmlControls.HtmlSelect
Protected Overrides Sub AddParsedSubObject(ByVal obj As Object)
' If the object is a ListItem, then add the ListItem to the Items collection.
If TypeOf obj Is System.Web.UI.WebControls.ListItem Then
Items.Add(CType(obj, System.Web.UI.WebControls.ListItem))
Else
Throw New System.Web.HttpException("You cannot have a child control of type " + obj.GetType().Name.ToString())
End If
End Sub
End Class
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomHtmlSelectAddParsedSubObject : System.Web.UI.HtmlControls.HtmlSelect
{
protected override void AddParsedSubObject(object obj)
{
// If the object is a ListItem, then add the ListItem to the Items collection.
if (obj is System.Web.UI.WebControls.ListItem)
{
Items.Add((System.Web.UI.WebControls.ListItem)obj);
}
else
{
throw new System.Web.HttpException("You cannot have a child control of type " + obj.GetType().Name.ToString());
}
}
}
}
package Samples.AspNet.JSL.Controls;
public class CustomHtmlSelectAddParsedSubObject
extends System.Web.UI.HtmlControls.HtmlSelect
{
protected void AddParsedSubObject(Object obj)
throws System.Web.HttpException
{
// If the object is a ListItem, then add the ListItem to
//the Items collection.
if (obj instanceof System.Web.UI.WebControls.ListItem) {
get_Items().Add((System.Web.UI.WebControls.ListItem)obj);
}
else {
throw new System.Web.
HttpException("You cannot have a child control of type "
+ obj.GetType().get_Name().ToString());
}
} //AddParsedSubObject
} //CustomHtmlSelectAddParsedSubObject
プラットフォーム
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
参照
関連項目
HtmlSelect クラス
HtmlSelect メンバ
System.Web.UI.HtmlControls 名前空間