HtmlSelect.AddParsedSubObject-Methode
Fügt dem HtmlSelect-Steuerelement ein analysiertes untergeordnetes Steuerelement hinzu.
Namespace: System.Web.UI.HtmlControls
Assembly: System.Web (in system.web.dll)
Syntax
'Declaration
Protected Overrides Sub AddParsedSubObject ( _
obj As Object _
)
'Usage
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
)
Parameter
- obj
Das analysierte untergeordnete Steuerelement, das hinzugefügt werden soll.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
Das vom obj-Parameter angegebene untergeordnete Steuerelement muss vom Typ ListItem sein. |
Hinweise
Mit der AddParsedSubObject-Methode fügt ASP.NET dem HtmlSelect-Steuerelement analysierte untergeordnete Steuerelemente hinzu.
Beispiel
Im folgenden Codebeispiel wird das Überschreiben der AddParsedSubObject-Methode in einem benutzerdefinierten Serversteuerelement veranschaulicht, sodass diese immer prüft, ob zu der HtmlSelect-Auflistung der ausgewählten Elemente eine Instanz der ListItem-Klasse hinzugefügt wurde.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<HTML>
<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>
<p>
<DIV id="Div1" runat="server"
style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px"
ms_positioning="FlowLayout" />
</p>
</form>
</body>
</HTML>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<HTML>
<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>
<p>
<DIV id="Div1" runat="server"
style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px"
ms_positioning="FlowLayout" />
</p>
</form>
</body>
</HTML>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.JSL.Controls" Assembly="Samples.AspNet.JSL" %>
<%@ Page Language="VJ#" AutoEventWireup="True" %>
<HTML>
<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>
<p>
<DIV id="Div1" runat="server"
style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px"
ms_positioning="FlowLayout" />
</p>
</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
Plattformen
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
HtmlSelect-Klasse
HtmlSelect-Member
System.Web.UI.HtmlControls-Namespace