2 * Namespace: System.Web.UI.WebControls
\r
3 * Class: ValidatedControlConverter
\r
5 * Author: Gaurav Vaish
\r
6 * Maintainer: gvaish@iitk.ac.in
\r
7 * Contact: <my_scripts2001@yahoo.com>, <gvaish@iitk.ac.in>
\r
8 * Implementation: yes
\r
11 * (C) Gaurav Vaish (2002)
\r
15 using System.ComponentModel;
\r
17 using System.Web.UI;
\r
19 namespace System.Web.UI.WebControls
\r
21 public class ValidatedControlConverter : StringConverter
\r
23 public ValidatedControlConverter(): base()
\r
27 private object[] GetValues(IContainer container)
\r
29 ArrayList values = new ArrayList();
\r
30 IEnumerator ie = container.Components.GetEnumerator();
\r
33 foreach(IComponent current in container.Components)
\r
35 Control ctrl = (Control)current;
\r
36 if(ctrl == null || ctrl.ID == null || ctrl.ID.Length == 0)
\r
38 ValidationPropertyAttribute attrib = (ValidationPropertyAttribute)((TypeDescriptor.GetAttributes(ctrl))[typeof(ValidationPropertyAttribute)]);
\r
39 if(attrib == null || attrib.Name == null)
\r
41 values.Add(String.Copy(ctrl.ID));
\r
45 if(ie is IDisposable)
\r
49 return values.ToArray();
\r
52 public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context)
\r
54 if(context != null && context.Container != null)
\r
56 object[] values = GetValues(context.Container);
\r
59 return new StandardValuesCollection(values);
\r
65 public override bool GetStandardValuesExclusive(ITypeDescriptorContext context)
\r
70 public override bool GetStandardValuesSupported(ITypeDescriptorContext context)
\r