示例#1
0
        public MultiselectSample()
        {
            var @select = new SelectElement
            {
                Id       = "mymulti",
                Class    = "form-control",
                Multiple = true
            };
            var toggle = new Button
            {
                Class = "btn btn-primary"
            };

            toggle.AppendChild(new TextNode("Toggle"));
            @select.AddOption("N", "North");
            @select.AddOption("E", "East");
            @select.AddOption("S", "South");
            @select.AddOption("W", "West");
            toggle.On("click", () =>
            {
                foreach (var child in @select.Children)
                {
                    if (child is OptionElement option)
                    {
                        option.Selected = !option.Selected;
                    }
                }
                return(Task.CompletedTask);
            });
            Root       = Element.Create("div");
            Root.Class = "form-row";
            var builder = new LaraBuilder(Root);

            builder
            .Push("div", "form-group col-md-2")
            .Push(@select)
            .Pop()
            .Pop()
            .Push("div", "form-group col-md-1")
            .Push(toggle)
            .Pop()
            .Pop();
        }
示例#2
0
        public void SelectAddOption()
        {
            var x = new SelectElement();

            x.AddOption("myvalue", "this is the text");
            var option = x.Options.FirstOrDefault();

            Assert.NotNull(option);
            Assert.Equal("myvalue", option.Value);
            var text = option.Children.FirstOrDefault() as TextNode;

            Assert.NotNull(text);
            Assert.Equal("this is the text", text !.Data);
        }
示例#3
0
        public SelectSample()
        {
            var @select = new SelectElement
            {
                Id    = "myselect",
                Class = "form-control",
            };
            var advance = new Button
            {
                Class = "btn btn-primary"
            };

            advance.AppendChild(new TextNode("Advance"));
            @select.AddOption("0", "Monday");
            @select.AddOption("1", "Tuesday");
            @select.AddOption("2", "Wednesday");
            @select.AddOption("3", "Thursday");
            @select.AddOption("4", "Friday");
            @select.AddOption("5", "Saturday");
            @select.AddOption("6", "Sunday");
            advance.On("click", () =>
            {
                int.TryParse(@select.Value, NumberStyles.Any, CultureInfo.InvariantCulture, out var weekday);
                weekday       = (weekday + 1) % 7;
                @select.Value = weekday.ToString(CultureInfo.InvariantCulture);
                return(Task.CompletedTask);
            });
            Root       = Element.Create("div");
            Root.Class = "form-row";
            var builder = new LaraBuilder(Root);

            builder
            .Push("div", "form-group col-md-2")
            .Push(@select)
            .Pop()
            .Pop()
            .Push("div", "form-group col-md-1")
            .Push(advance)
            .Pop()
            .Pop();
        }