public void FillControlContext <TProperty>(IControlContext target, Expression <Func <TModel, TProperty> > expression) { var modelExplorer = ExpressionMetadataProvider.FromLambdaExpression <TModel, TProperty>(expression, ViewData, MetadataProvider); var expressionName = ExpressionHelper.GetExpressionText(expression); var fullName = ViewData.TemplateInfo.GetFullHtmlFieldName(expressionName); ModelStateEntry modelState; ViewContext.ViewData.ModelState.TryGetValue(fullName, out modelState); object value = null; if (modelState != null && modelState.RawValue != null) { value = modelState.RawValue; } else if (modelExplorer.Model != null) { value = modelExplorer.Model; } var errors = modelState == null || modelState.Errors == null ? null : modelState.Errors.Select(e => e.ErrorMessage).ToArray(); target.FieldName = fullName; target.IsRequired = modelExplorer.Metadata.IsRequired; target.FieldValue = value; target.Errors = errors; target.HasErrors = errors != null && errors.Length > 0; target.HasWarning = false; }
protected override void WriteSelf(System.IO.TextWriter writer, IBootstrapContext context) { var formGroup = context.PeekNearest <FormGroup>(); if (formGroup != null && controlContext == null) { controlContext = formGroup.ControlContextValue; } var input = context.CreateTagBuilder("p"); input.AddCssClass("form-control-static"); if (controlContext != null) { input.MergeAttribute("id", controlContext.Name); var value = controlContext.Value; if (value != null) { input.SetInnerText(value.ToString()); } } if (DisabledValue) { // nothing - already read-only :) } ApplyCss(input); ApplyAttributes(input); writer.Write(input.GetFullTag()); }
public void HostChildControl(IControlContext controlContext) { if (_hostedControlHandle != IntPtr.Zero) { CloseHandle(_hostedControlHandle); } _hostedControlHandle = controlContext.Handle; SetParent(_hostedControlHandle, this.Handle); MoveWindow(_hostedControlHandle, 0, 0, Width, Height, true); }
public void FillControlContext <TProperty>(IControlContext target, Expression <Func <TModel, TProperty> > expression) { var modelMetadata = ModelMetadata.FromLambdaExpression <TModel, TProperty>(expression, ViewData); var name = ExpressionHelper.GetExpressionText(expression); var fullHtmlFieldName = ViewData.TemplateInfo.GetFullHtmlFieldName(name); ModelState modelState; ViewData.ModelState.TryGetValue(fullHtmlFieldName, out modelState); var value = modelState == null || modelState.Value == null ? (modelMetadata.Model == null ? null : modelMetadata.Model) : modelState.Value.AttemptedValue; var errors = modelState == null || modelState.Errors == null ? null : modelState.Errors.Select(e => e.ErrorMessage).ToArray(); target.FieldName = fullHtmlFieldName; target.IsRequired = modelMetadata.IsRequired; target.FieldValue = value; target.Errors = errors; target.HasErrors = errors != null && errors.Length > 0; target.HasWarning = false; }
public static IWriter <T> ControlContext <T>(this IWriter <T> target, IControlContext context) where T : IWritable, IControlContextHolder { target.Item.SetControlContext(context); return(target); }
public static IWriter2 <T, TContent> ControlContext <T, TContent>(this IWriter2 <T, TContent> target, IControlContext context) where T : ContentElement <TContent>, IControlContextHolder where TContent : DisposableContent { target.Item.SetControlContext(context); return(target); }
void IControlContextHolder.SetControlContext(IControlContext context) { ControlContextValue = context; }
public void SetControlContext(IControlContext context) { this.ControlContextValue = context; }