HtmlSelect.AddParsedSubObject(Object) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Adiciona um controle filho analisado ao controle HtmlSelect.
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)
Parâmetros
- obj
- Object
O controle filho analisado a adicionar.
Implementações
Exceções
O controle filho especificado pelo parâmetro obj
deve ser do tipo ListItem.
Exemplos
O exemplo de código a ListItem seguir demonstra como substituir o AddParsedSubObject método em um controle de servidor personalizado para que ele sempre verifique se uma instância da classe é adicionada à HtmlSelect coleção de itens selecionados.
<%@ 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)
{
Div1.InnerHtml = "You selected:";
for (int i=0; i<=HtmlSelect1.Items.Count - 1; i++)
{
if (HtmlSelect1.Items[i].Selected)
{
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.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>
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());
}
}
}
}
<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
Comentários
O AddParsedSubObject método é usado por ASP.NET para adicionar controles filho analisados ao HtmlSelect controle .