private void Displaying(ElementDisplayContext context, Element element) { var drivers = _elementManager.Value.GetDrivers(element); foreach (var driver in drivers) { driver.Displaying(context); } }
public dynamic DisplayElement( Element element, IContent content, string displayType = null, IUpdateModel updater = null, string renderEventName = null, string renderEventArgs = null) { var createShapeContext = new ElementCreatingDisplayShapeContext { Element = element, DisplayType = displayType, Content = content, }; element.Descriptor.CreatingDisplay(createShapeContext); var typeName = element.GetType().Name; var category = element.Category.ToSafeName(); var drivers = element.Descriptor.GetDrivers(); var elementShapeArguments = CreateArguments(element, content); var elementShape = (dynamic)_shapeFactory.Create("Element", elementShapeArguments, () => new ZoneHolding(() => _shapeFactory.Create("ElementZone"))); elementShape.Metadata.DisplayType = displayType; elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}", typeName)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}", typeName, displayType)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}__{1}", typeName, category)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}__{2}", typeName, displayType, category)); var displayContext = new ElementDisplayContext { Element = element, ElementShape = elementShape, DisplayType = displayType, Content = content, Updater = updater, RenderEventName = renderEventName, RenderEventArgs = renderEventArgs }; _elementEventHandlerHandler.Displaying(displayContext); InvokeDrivers(drivers, driver => driver.Displaying(displayContext)); element.Descriptor.Display(displayContext); var container = element as Container; if (container != null) { if (container.Elements.Any()) { foreach (var child in container.Elements) { var childShape = DisplayElement(child, content, displayType: displayType, updater: updater); childShape.Parent = elementShape; elementShape.Add(childShape); } } } return(elementShape); }
public dynamic DisplayElement( Element element, IContent content, string displayType = null, IUpdateModel updater = null, string renderEventName = null, string renderEventArgs = null) { var createShapeContext = new ElementCreatingDisplayShapeContext { Element = element, DisplayType = displayType, Content = content, }; element.Descriptor.CreatingDisplay(createShapeContext); var typeName = element.GetType().Name; var category = element.Category.ToSafeName(); var drivers = element.Descriptor.GetDrivers(); var elementShapeArguments = CreateArguments(element, content); var elementShape = (dynamic)_shapeFactory.Create("Element", elementShapeArguments, () => new ZoneHolding(() => _shapeFactory.Create("ElementZone"))); elementShape.Metadata.DisplayType = displayType; elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}", typeName)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}", typeName, displayType)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}__{1}", typeName, category)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}__{2}", typeName, displayType, category)); var displayContext = new ElementDisplayContext { Element = element, ElementShape = elementShape, DisplayType = displayType, Content = content, Updater = updater, RenderEventName = renderEventName, RenderEventArgs = renderEventArgs }; _elementEventHandlerHandler.Displaying(displayContext); InvokeDrivers(drivers, driver => driver.Displaying(displayContext)); element.Descriptor.Display(displayContext); var container = element as Container; if (container != null) { if (container.Elements.Any()) { foreach (var child in container.Elements) { var childShape = DisplayElement(child, content, displayType: displayType, updater: updater); childShape.Parent = elementShape; elementShape.Add(childShape); } } } return elementShape; }
private void Displaying(ElementDisplayContext context) { var contentItem = context.Content.ContentItem; var typeName = context.Element.Descriptor.TypeName; var contentField = contentItem.GetContentField(typeName); if ((contentItem.Id == 0 || context.DisplayType == "Design") && context.Updater != null) { // The content item hasn't been stored yet, so bind form values with the content field to represent actual Data. var controller = (Controller)context.Updater; var oldValueProvider = controller.ValueProvider; controller.ValueProvider = context.Element.Data.ToValueProvider(_cultureAccessor.Value.CurrentCulture); _contentFieldDisplay.Value.UpdateEditor(contentItem, contentField, context.Updater); _transactionManager.Value.Cancel(); controller.ValueProvider = oldValueProvider; } var contentFieldShape = _contentFieldDisplay.Value.BuildDisplay(contentItem, contentField, displayType: "Layout"); context.ElementShape.ContentField = contentFieldShape; }
void IElementEventHandler.Displaying(ElementDisplayContext context) { if (context.DisplayType == "Design") return; var element = context.Element as FormElement; if (element == null) return; var registrationContext = new RegisterClientValidationAttributesContext { FieldName = element.Name }; if (element.Form != null && element.Form.EnableClientValidation == true) { _formService.RegisterClientValidationAttributes(element, registrationContext); if (registrationContext.ClientAttributes.Any()) { registrationContext.ClientAttributes["data-val"] = "true"; } } context.ElementShape.ClientValidationAttributes = registrationContext.ClientAttributes; }
private void Displaying(ElementDisplayContext context, ShapeDescriptor shapeDescriptor) { var shapeType = shapeDescriptor.ShapeType; var shape = _shapeFactory.Value.Create(shapeType); context.ElementShape.Snippet = shape; }
public virtual void Displaying(ElementDisplayContext context) { }