public TableView(IEnumerable <TValue> rowValues, IFormatProvider format)
        {
            if (format == null)
            {
                throw new ArgumentNullException("format");
            }
            if (rowValues == null)
            {
                throw new ArgumentNullException("rowValues");
            }

            this.format  = format;
            this.fields  = new RecordFieldCollection <TValue>();
            this.rows    = rowValues.Select(x => new ObjectView <TValue>(x, fields, format)).ToList();
            this.actions = new ActionList("Actions");
            this.Caption = string.Format("{0} Table", typeof(TValue).Name);
        }
        public ObjectView(TValue value, RecordFieldCollection <TValue> fields, IFormatProvider format)
        {
            if (value == null)
            {
                throw new ArgumentNullException("value");
            }
            if (fields == null)
            {
                throw new ArgumentNullException("fields");
            }
            if (format == null)
            {
                throw new ArgumentNullException("format");
            }

            this.format  = format;
            this.value   = value;
            this.fields  = fields;
            this.actions = new ActionList("Actions");
            this.Caption = string.Format("{0} Properties", typeof(TValue).Name);
        }