AttributeCollection Class
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.
Provides object-model access to all attributes declared in the opening tag of an ASP.NET server control element. This class cannot be inherited.
public ref class AttributeCollection sealed
public sealed class AttributeCollection
type AttributeCollection = class
Public NotInheritable Class AttributeCollection
- Inheritance
-
AttributeCollection
Examples
The following example creates a new AttributeCollection object that is named myAttributeCollection
, and then checks whether the page has been posted back. If it has not, the code adds two attributes to the collection. It then gets the number of attributes in the collection and iterates through the collection, writing the key to each attribute to the page. If the page is a postback, the code gets the new number of attributes and iterates through the collection, writing the key and value of each attribute to the page.
AttributeCollection myAttributeCollection = null;
void Page_Load(object sender,EventArgs e)
{
myAttributeCollection = new AttributeCollection(ViewState);
Response.Write("<h3> AttributeCollection.AttributeCollection Sample </h3>");
if (!IsPostBack)
{
myAttributeCollection.Add("Color" ,"Color.Red");
myAttributeCollection.Add("BackColor","Color.blue");
Response.Write("Attribute Collection count before PostBack = " + myAttributeCollection.Count);
Response.Write("<br /><u><h4>Enumerating Attributes for CustomControl before PostBack</h4></u>");
IEnumerator keys = myAttributeCollection.Keys.GetEnumerator();
int i =1;
String key;
while (keys.MoveNext())
{
key = (String)keys.Current;
Response.Write(i + ". "+key + "=" + myAttributeCollection[key]+"<br />");
i++;
}
}
else
{
Response.Write("Attribute Collection count after PostBack = "+myAttributeCollection.Count);
Response.Write("<br /><u><h4>Enumerating Attributes for CustomControl after PostBack</h4></u>");
IEnumerator keys = myAttributeCollection.Keys.GetEnumerator();
int i =1;
String key;
while (keys.MoveNext())
{
key = (String)keys.Current;
Response.Write(i + ". "+key + "=" + myAttributeCollection[key]+"<br />");
i++;
}
}
}
Dim myAttributeCollection As AttributeCollection = Nothing
Sub Page_Load(sender As Object, e As EventArgs)
myAttributeCollection = New AttributeCollection(ViewState)
Response.Write("<h3> AttributeCollection.AttributeCollection Sample </h3>")
If Not IsPostBack Then
myAttributeCollection.Add("Color", "Color.Red")
myAttributeCollection.Add("BackColor", "Color.blue")
Response.Write("Attribute Collection count before PostBack = " & _
myAttributeCollection.Count.ToString())
Response.Write("<br /><u><h4>Enumerating Attributes for " & _
"CustomControl before PostBack</h4></u>")
Dim keys As IEnumerator = myAttributeCollection.Keys.GetEnumerator()
Dim i As Integer = 1
Dim key As String
While keys.MoveNext()
key = CType(keys.Current, String)
Response.Write(i.ToString() + ". " + key + "=" + myAttributeCollection(key) + "<br />")
i += 1
End While
Else
Response.Write("Attribute Collection count after PostBack = " + _
myAttributeCollection.Count.ToString())
Response.Write("<br /><u><h4>Enumerating Attributes for " + _
"CustomControl after PostBack</h4></u>")
Dim keys As IEnumerator = myAttributeCollection.Keys.GetEnumerator()
Dim i As Integer = 1
Dim key As String
While keys.MoveNext()
key = CType(keys.Current, String)
Response.Write(i.ToString() + ". " + key + "=" + myAttributeCollection(key) + "<br />")
i += 1
End While
End If
End Sub
Remarks
Individual items in the collection return a String object as their value. If there are no attribute items in the collection, the collection returns null
.
Attributes on an HTML server control are programmatically available through the Attributes property, which is inherited by all HTML server controls. ASP.NET exposes attributes of HTML server controls as properties of those controls.
You can add attributes to a Web server control through the Attributes property, which is inherited by all Web server controls. The attributes in the attributes collection for a Web server control do not necessarily correspond to the control's strongly typed properties for that control.
Constructors
AttributeCollection(StateBag) |
Initializes a new instance of the AttributeCollection class. |
Properties
Count |
Gets the number of attributes in the AttributeCollection object. |
CssStyle |
Gets a collection of styles for the ASP.NET server control to which the current AttributeCollection object belongs. |
Item[String] |
Gets or sets a specified attribute value for a server control. |
Keys |
Gets a collection of keys to all attributes in the server control's AttributeCollection object. |
Methods
Add(String, String) |
Adds an attribute to a server control's AttributeCollection object. |
AddAttributes(HtmlTextWriter) |
Adds attributes from the AttributeCollection class to the HtmlTextWriter object that is responsible for rendering the attributes as markup. |
Clear() |
Removes all attributes from a server control's AttributeCollection object. |
Equals(Object) |
Determines whether the current instance of the AttributeCollection object is equal to the specified object. |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetHashCode() |
Returns the hash code for this instance. |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
Remove(String) |
Removes an attribute from a server control's AttributeCollection object. |
Render(HtmlTextWriter) |
Writes the collection of attributes to the specified HtmlTextWriter output stream for the control to which the collection belongs. |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |