HtmlSelect.RenderAttributes(HtmlTextWriter) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Esegue il rendering degli attributi del controllo HtmlSelect nell'oggetto HtmlTextWriter specificato.
protected:
override void RenderAttributes(System::Web::UI::HtmlTextWriter ^ writer);
protected override void RenderAttributes (System.Web.UI.HtmlTextWriter writer);
override this.RenderAttributes : System.Web.UI.HtmlTextWriter -> unit
Protected Overrides Sub RenderAttributes (writer As HtmlTextWriter)
Parametri
- writer
- HtmlTextWriter
Oggetto HtmlTextWriter che riceve il contenuto di cui è stato eseguito il rendering.
Esempio
Nell'esempio di codice seguente viene illustrato come eseguire l'override del RenderAttributes metodo in un controllo server personalizzato in modo che il testo del titolo specifico venga sempre visualizzato per il HtmlSelect controllo.
<%@ 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 - RenderAttributes - 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 - RenderAttributes - C# Example</h3>
<p>
<aspSample:CustomHtmlSelectRenderAttributes
id="HtmlSelect1"
name="HtmlSelect1"
runat="server">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
<option value="Option3">Option3</option>
</aspSample:CustomHtmlSelectRenderAttributes>
</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 - RenderAttributes - 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 - RenderAttributes - VB.NET Example</h3>
<p>
<aspSample:CustomHtmlSelectRenderAttributes
id="HtmlSelect1"
name="HtmlSelect1"
runat="server">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
<option value="Option3">Option3</option>
</aspSample:CustomHtmlSelectRenderAttributes>
</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 CustomHtmlSelectRenderAttributes : System.Web.UI.HtmlControls.HtmlSelect
{
protected override void RenderAttributes(System.Web.UI.HtmlTextWriter writer)
{
// Write out Title tag
writer.Write(" Title=\"Text from RenderAttributes.\"");
// Call the base's RenderAttributes method.
base.RenderAttributes(writer);
}
}
}
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomHtmlSelectRenderAttributes
Inherits System.Web.UI.HtmlControls.HtmlSelect
Protected Overrides Sub RenderAttributes(ByVal writer As System.Web.UI.HtmlTextWriter)
' Write out Title tag
writer.Write(" Title=""Text from RenderAttributes.""")
' Call the base's RenderAttributes method.
MyBase.RenderAttributes(writer)
End Sub
End Class
Commenti
Il RenderAttributes metodo esegue il rendering dell'attributo name
del HtmlSelect controllo direttamente per assicurarsi che abbia lo stesso valore della Control.UniqueID proprietà. Dopo aver eseguito il rendering dell'attributo, il RenderAttributes metodo chiama il metodo della RenderAttributes classe base.
Il RenderAttributes metodo viene usato principalmente dagli sviluppatori di controlli che estendono la funzionalità del HtmlSelect controllo.