HtmlTextWriter.OnAttributeRender Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Determines whether the specified markup attribute and its value can be rendered to the current markup element.
protected:
virtual bool OnAttributeRender(System::String ^ name, System::String ^ value, System::Web::UI::HtmlTextWriterAttribute key);
protected virtual bool OnAttributeRender (string name, string value, System.Web.UI.HtmlTextWriterAttribute key);
abstract member OnAttributeRender : string * string * System.Web.UI.HtmlTextWriterAttribute -> bool
override this.OnAttributeRender : string * string * System.Web.UI.HtmlTextWriterAttribute -> bool
Protected Overridable Function OnAttributeRender (name As String, value As String, key As HtmlTextWriterAttribute) As Boolean
Parameters
- name
- String
A string containing the name of the attribute to render.
- value
- String
A string containing the value that is assigned to the attribute.
The HtmlTextWriterAttribute associated with the markup attribute.
Returns
Always true
.
Examples
The following code example shows how to override the OnAttributeRender method. If a Size attribute is rendered, but the Size value is not 30pt
, the OnAttributeRender override calls the AddAttribute method to add a Size attribute and set its value to 30pt
.
// If a size attribute is to be rendered, compare its value to 30 point.
// If it is not set to 30 point, add the attribute and set the value to 30,
// then return false.
protected override bool OnAttributeRender(string name,
string value,
HtmlTextWriterAttribute key)
{
if (key == HtmlTextWriterAttribute.Size)
{
if (string.Compare(value, "30pt") != 0)
{
AddAttribute("size", "30pt");
return false;
}
}
// If the attribute is not a size attribute, use
// the base functionality of the OnAttributeRender method.
return base.OnAttributeRender(name, value, key);
}
' If a size attribute is to be rendered, compare its value to 30 point.
' If it is not set to 30 point, add the attribute and set the value to 30
' then return false.
Protected Overrides Function OnAttributeRender(name As String, _
value As String, _
key As HtmlTextWriterAttribute) _
As Boolean
If key = HtmlTextWriterAttribute.Size Then
If [String].Compare(value, "30pt") <> 0 Then
AddAttribute("size", "30pt")
Return False
End If
End If
' If the attribute is not a size attribute, use
' the base functionality of the OnAttributeRender method.
Return MyBase.OnAttributeRender(name, value, key)
End Function 'OnAttributeRender
Remarks
The HtmlTextWriter class implementation of the OnAttributeRender method always returns true
. The OnAttributeRender overrides can determine whether an attribute will be rendered to the page.
Notes to Inheritors
If you inherit from the HtmlTextWriter class, you can override the OnAttributeRender(String, String, HtmlTextWriterAttribute) method to return false
to prevent an attribute from being rendered at all, being rendered on a particular element, or being rendered for a particular markup. For example, if you do not want the object derived from HtmlTextWriter to render the bgcolor
attribute to <table>
elements, you can override the OnAttributeRender(String, String, HtmlTextWriterAttribute) and return false
when name
passes bgcolor
and the TagName property value is table
.