public ReflectedParameter(ReflectedAccessor key, string name, double factor)
     : this(key, name)
 {
     Factor = factor;
 }
 public ReflectedParameter(ReflectedAccessor key, string name)
     : this( key )
 {
     Name = name;
 }
 public ReflectedParameter(ReflectedAccessor key, double factor)
     : this( key )
 {
     Factor = factor;
 }
 public ReflectedParameter(ReflectedAccessor key)
 {
     Init(key);
 }
 private void Init(ReflectedAccessor key)
 {
     Init( );
     Key  = key;
     Name = AkaAttribute.FindAka(key.provider as MemberInfo);
 }
        //private PropertyDescriptorCollection descriptors;
        //public ReflectedParameterFactory()
        //{
        //    Type cType = typeof( ReflectedParameter );
        //    ArrayList result = new ArrayList( );
        //    result.Add( new ReflectedPropertyDescriptor( cType, ReflectedParameter.NAME_PROPERTY_NAME,
        //                                                 ReflectedParameter.NAME_PROPERTY_DISPLAY_NAME, true ) );
        //    result.Add( new ReflectedPropertyDescriptor( cType, ReflectedParameter.MODELNAME_PROPERTY_NAME,
        //                                                 ReflectedParameter.MODELNAME_PROPERTY_DISPLAY_NAME,
        //                                                 false ) );
        //    result.Add( new ReflectedPropertyDescriptor( cType, ReflectedParameter.VALUE_PROPERTY_NAME, false ) );
        //    result.Add( new ReflectedPropertyDescriptor( cType, ReflectedParameter.FACTOR_PROPERTY_NAME,
        //                                                 ReflectedParameter.FACTOR_PROPERTY_DISPLAY_NAME, true ) );

        //    result.Insert( 0, new FUPropertyDescriptor( "FU" ) );
        //    result.Insert( 0, new CatchmentPropertyDescriptor( "Catchment" ) );
        //    descriptors = new PropertyDescriptorCollection( (PropertyDescriptor[])result.ToArray( typeof( PropertyDescriptor ) ) );
        //}

        //public PropertyDescriptorCollection PropertyDescriptors
        //{
        //    get { return descriptors; }
        //}

        public static ReflectedParameter NewItem(ReflectedAccessor key)
        {
            return(new ReflectedParameter(key));
        }