HtmlInputImage.RenderAttributes(HtmlTextWriter) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將 HtmlInputImage 控制項的屬性轉譯為指定的 HtmlTextWriter 物件。
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)
參數
- writer
- HtmlTextWriter
HtmlTextWriter,包含在用戶端上呈現的輸出資料流。
例外狀況
Src 屬性包含不正確的 URL。
範例
下列程式碼範例示範如何在自訂伺服器控制項中覆寫 RenderAttributes 方法,以便一律以 工具提示的形式存取 HtmlInputImage 特定的替代文字。
<%@ 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">
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// Set the OnClick attribute of the custom HtmlInputImage control.
HtmlInputImage1.Attributes.Add("onclick", "alert('Hello client-side world.');");
}
void HtmlInputImage1_ServerClick(Object sender, ImageClickEventArgs e)
{
// Set the inner HTML of the div element.
Div1.InnerHtml = "Hello server-side world.";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom HtmlInputImage - RenderAttributes - C# Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Custom HtmlInputImage - RenderAttributes - C# Example</h3>
<aspSample:CustomHtmlInputImageRenderAttributes
id="HtmlInputImage1"
name="HtmlInputImage1"
runat="server"
type="image"
src="Image1.jpg"
alt="Microsoft"
onserverclick="HtmlInputImage1_ServerClick" />
<br />
<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">
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Set the OnClick attribute of the custom HtmlInputImage control.
HtmlInputImage1.Attributes.Add("onclick", "alert('Hello client-side world.');")
End Sub
Sub HtmlInputImage1_ServerClick(ByVal sender As Object, ByVal e As ImageClickEventArgs)
' Set the inner HTML of the div element.
Div1.InnerHtml = "Hello server-side world."
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom HtmlInputImage - RenderAttributes - Visual Basic Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Custom HtmlInputImage - RenderAttributes - Visual Basic Example</h3>
<aspSample:CustomHtmlInputImageRenderAttributes
id="HtmlInputImage1"
name="HtmlInputImage1"
runat="server"
type="image"
src="Image1.jpg"
alt="Microsoft"
onserverclick="HtmlInputImage1_ServerClick" />
<br />
<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 CustomHtmlInputImageRenderAttributes : System.Web.UI.HtmlControls.HtmlInputImage
{
protected override void RenderAttributes(System.Web.UI.HtmlTextWriter writer)
{
// Add an Alt attribute to the HtmlInputImage control.
writer.Write(" alt='Alternate text from RenderAttributes'");
// Call the base class's RenderAttributes method.
base.RenderAttributes(writer);
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomHtmlInputImageRenderAttributes
Inherits System.Web.UI.HtmlControls.HtmlInputImage
Protected Overrides Sub RenderAttributes(ByVal writer As System.Web.UI.HtmlTextWriter)
' Add an Alt attribute to the HtmlInputImage control.
writer.Write(" alt='Alternate text from RenderAttributes'")
' Call the base class's RenderAttributes method.
MyBase.RenderAttributes(writer)
End Sub
End Class
End Namespace
備註
方法 RenderAttributes 會解析 屬性中設定的 Src URL、如果 CausesValidation 屬性為 true
,則寫入 onclick
轉譯 HtmlInputImage 控制項的 屬性,最後呼叫基底 RenderAttributes 方法。 如果屬性的值 Src 是格式不正確的 URL, HttpException 則會擲回例外狀況。
方法 RenderAttributes 主要是由控制項開發人員用來擴充控制項的功能 HtmlInputImage 。