public static DotvvmControl GetContents(
     ValueOrBinding <string> text
     )
 {
     return(new HtmlGenericControl("fluent-text-area")
            .WithProperty(Fast.BindGroupDescriptor.GetDotvvmProperty("value"), text));
 }
 public static DotvvmControl GetContents(
     [DefaultValue(null)] ValueOrBinding <string> text,
     [DefaultValue(null)] ITemplate contentTemplate,
     IValueBinding <bool> @checked
     )
 {
     return(new HtmlGenericControl("fluent-checkbox")
            .WithProperty(Fast.BindGroupDescriptor.GetDotvvmProperty("checked"), @checked)
            .WithInnerTextOrContent(text, contentTemplate));
 }
 public static DotvvmControl GetContents(
     ValueOrBinding <string> value,
     [DefaultValue(null)] ValueOrBinding <string> text,
     [DefaultValue(null)] ITemplate contentTemplate
     )
 {
     return(new HtmlGenericControl("fluent-radio")
            .WithAttribute("value", value)
            .WithInnerTextOrContent(text, contentTemplate));
 }
Exemple #4
0
 public static DotvvmControl GetContents(
     [DefaultValue(null)] ValueOrBinding <string> text,
     [DefaultValue(null)] ITemplate contentTemplate,
     [DefaultValue(BadgeAppearance.Neutral)] BadgeAppearance appearance
     )
 {
     return(new HtmlGenericControl("fluent-badge")
            .WithAttribute("appearance", appearance.ToString().ToLower())
            .WithInnerTextOrContent(text, contentTemplate));
 }
Exemple #5
0
 public static DotvvmControl GetContents(
     [DefaultValue(null)] ValueOrBinding <string> text,
     [DefaultValue(null)] ITemplate contentTemplate,
     int position
     )
 {
     return(new HtmlGenericControl("fluent-slider-label")
            .WithAttribute("position", position.ToString())
            .WithInnerTextOrContent(text, contentTemplate));
 }
 public static DotvvmControl GetContents(
     [MarkupOptions(MappingMode = MappingMode.InnerElement)] List <Radio> radioButtons,
     ValueOrBinding <string> groupName,
     ValueOrBinding <string> value
     )
 {
     return(new HtmlGenericControl("fluent-radio-group")
            .WithAttribute("name", groupName)
            .WithProperty(Fast.BindGroupDescriptor.GetDotvvmProperty("value"), value)
            .WithChildren(radioButtons));
 }
 public static DotvvmControl GetContents(
     [DefaultValue(null)] ValueOrBinding <string> text,
     [DefaultValue(null)] ITemplate contentTemplate,
     ICommandBinding click,
     [DefaultValue(ButtonAppearance.Neutral)] ButtonAppearance appearance
     )
 {
     return(new HtmlGenericControl("fluent-button")
            .WithAttribute("appearance", appearance.ToString().ToLower())
            .WithProperty(Events.ClickProperty, click)
            .WithInnerTextOrContent(text, contentTemplate));
 }
 public static DotvvmControl GetContents(
     [DefaultValue(0)] int min,
     [DefaultValue(100)] int max,
     [DefaultValue(1)] int step,
     ValueOrBinding <int> value
     )
 {
     return(new HtmlGenericControl("fluent-progress-ring")
            .WithAttribute("min", min.ToString())
            .WithAttribute("max", max.ToString())
            .WithAttribute("step", step.ToString())
            .WithProperty(Fast.BindGroupDescriptor.GetDotvvmProperty("value"), value));
 }
Exemple #9
0
 public static DotvvmControl GetContents(
     [DefaultValue(0)] int min,
     [DefaultValue(100)] int max,
     [DefaultValue(1)] int step,
     ValueOrBinding <int> value,
     [DefaultValue(null)] List <SliderLabel> labels
     )
 {
     return(new HtmlGenericControl("fluent-slider")
            .WithAttribute("min", min.ToString())
            .WithAttribute("max", max.ToString())
            .WithAttribute("step", step.ToString())
            .WithProperty(Fast.BindGroupDescriptor.GetDotvvmProperty("value"), value)
            .WithChildren(labels ?? Enumerable.Empty <DotvvmControl>()));
 }
Exemple #10
0
        public static T WithInnerTextOrContent <T>(this T control, ValueOrBinding <string> text, ITemplate template) where T : HtmlGenericControl
        {
            var hasText     = text.ValueOrDefault != null || text.BindingOrDefault != null;
            var hasTemplate = template != null;

            if (hasText && hasTemplate)
            {
                throw new DotvvmControlException(control, "The Text and ContentTemplate properties cannot be set at the same time!");
            }

            if (hasText)
            {
                return(control.WithProperty(HtmlGenericControl.InnerTextProperty, text));
            }
            else if (hasTemplate)
            {
                return(control.WithContent(template.BuildContent));
            }
            else
            {
                return(control);
            }
        }