public static void DoRender(Action baseRender, HtmlTextWriter output, EnumValidatedIntegerField field) { output.Write(@"<div style=""position:relative"">"); Type type = null; //Validate the Enum try { type = Type.GetType(field.ClassName); } catch (Exception) { } if (type == null) { output.Write(@"<span style=""color:red;"">The Enum Type Specified {0} cannot be found.</span>", field.ClassName); } else { if (!Enum.IsDefined(type, field.Value)) { var message = string.Format(@"<span style=""color:red;"">The Enum Value Specified {0} is not valid.</span>", field.Value); output.Write(message); switch (field._errorType) { case ErrorTypes.Error: break; case ErrorTypes.Warning: break; } } else { var enumValue = Enum.Parse(type, field.Value); var description = enumValue.GetFirstValueFromMetaDataAttribute(field.MetadataTag); if (string.IsNullOrEmpty(description)) { description = enumValue.ToString(); } output.Write(@"<span><em>{0}</em>.</span>", description); } } baseRender.Invoke(); output.Write(@"</div>"); }
private static void OnLoad(EnumValidatedIntegerField field) { field.ParseParameters(field.Source); }