| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- //
- // System.Web.UI.AttributeCollection.cs
- //
- // Authors:
- // Duncan Mak ([email protected])
- // Gonzalo Paniagua ([email protected])
- //
- // (C) 2002 Ximian, Inc. (http://www.ximian.com
- //
- using System;
- using System.Collections;
- namespace System.Web.UI {
- public sealed class AttributeCollection
- {
- private StateBag bag;
- private CssStyleCollection styleCollection;
-
- public AttributeCollection (StateBag bag)
- {
- this.bag = bag;
- }
- public int Count {
- get { return bag.Count; }
- }
- public CssStyleCollection CssStyle {
- get {
- if (styleCollection == null)
- styleCollection = new CssStyleCollection (bag);
- return styleCollection;
- }
- }
- public string this [string key] {
- get { return bag [key] as string; }
- set { bag.Add (key, value); }
- }
- public ICollection Keys {
- get { return bag.Keys; }
- }
- public void Add (string key, string value)
- {
- if (styleCollection != null && 0 == String.Compare (key, "style", true))
- styleCollection.FillStyle (value);
- else
- bag.Add (key, value);
- }
- public void AddAttributes (HtmlTextWriter writer)
- {
- foreach (string key in bag.Keys) {
- string value = bag [key] as string;
- writer.AddAttribute (key, value);
- }
- }
- public void Clear ()
- {
- bag.Clear ();
- }
- public void Remove (string key)
- {
- bag.Remove (key);
- }
- public void Render (HtmlTextWriter writer)
- {
- foreach (string key in bag.Keys) {
- string value = bag [key] as string;
- writer.WriteAttribute (key, value);
- }
- }
- }
- }
|