public string this[string columnName] { get { if (IsInitialize == false || IsOpen == false || IsOpenFinished == false) { return(null); } Func <object, string> validator; if (!ClientInfoGrid.DicValidation.TryGetValue(columnName, out validator)) { return(null); } var value = StaticReflection.GetValue(this, columnName); return(validator(value)); } }