diff --git a/src/MatBlazor.Demo/Demo/DemoEditContext.razor b/src/MatBlazor.Demo/Demo/DemoEditContext.razor
index 76ad80a4..17abefbf 100644
--- a/src/MatBlazor.Demo/Demo/DemoEditContext.razor
+++ b/src/MatBlazor.Demo/Demo/DemoEditContext.razor
@@ -1,424 +1,424 @@
 <MatH3>Validation via EditContext</MatH3>
 
 <DemoContainer>
-<Content>
-@using System.ComponentModel.DataAnnotations
-@using System.IO
-@using System.Net.Http.Headers
-<EditForm Model="myModel" OnValidSubmit="Success">
-    <DataAnnotationsValidator/>
-
-    <div class="mat-layout-grid">
-        <div class="mat-layout-grid-inner">
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-                Summary-level Validation Messages
-            </div>
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-            </div>
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-                Field-level Validation Messages
+    <Content>
+        @using System.ComponentModel.DataAnnotations
+        @using System.IO
+        @using System.Net.Http.Headers
+        <EditForm Model="myModel" OnValidSubmit="Success">
+            <DataAnnotationsValidator />
+
+            <div class="mat-layout-grid">
+                <div class="mat-layout-grid-inner">
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                        Summary-level Validation Messages
+                    </div>
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                    </div>
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                        Field-level Validation Messages
+                    </div>
+
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                        <p>
+                            <MatTextField Label="Username" @bind-Value="myModel.Username" />
+                        </p>
+                        <p>
+                            <MatTextField Label="Password" @bind-Value="myModel.Password" Type="password" />
+                        </p>
+                        <p>
+                            <MatTextField Label="MFA" @bind-Value="myModel.MFA" />
+                        </p>
+                        <p>
+                            <MatTextField Label="Comment" @bind-Value="myModel.Comment" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label="Start Date" @bind-Value="myModel.StartDate" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label="End Date" @bind-Value="myModel.EndDate" />
+                        </p>
+
+                        <p>
+                            <MatSelect Label="Select" @bind-Value="myModel.Gender">
+                                <MatOptionString Value=""></MatOptionString>
+                                <MatOptionString Value="M">M</MatOptionString>
+                                <MatOptionString Value="W">W</MatOptionString>
+                            </MatSelect>
+                        </p>
+                        <p>
+                            <MatSelectItem Label="SelectItem" @bind-Value="@myModel.Gender" Items="@GenderItems"></MatSelectItem>
+                        </p>
+                        <p>
+                            <MatSelectValue Label="SelectValue" @bind-Value="@myModel.Gender" Items="@GenderItems" ValueSelector="@(v => v)"></MatSelectValue>
+                        </p>
+
+                        <MatDivider />
+                        <p>
+                            <MatTextField Label="Username" @bind-Value="myModel.Username"
+                                          ValidationDisabled="true"
+                                          HelperText="ValidationDisabled" HelperTextPersistent="true" />
+                        </p>
+                        <p>
+                            <MatSelectItem Label="SelectItem" Value="@myModel.Gender" Items="@GenderItems" ValidationDisabled="true" HelperText="ValidationDisabled"></MatSelectItem>
+                        </p>
+
+                        <ValidationSummary />
+                    </div>
+
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4"
+                         style="text-align: center;">
+                        -or-
+                    </div>
+
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                        <p>
+                            <MatTextField Label="Username" @bind-Value="myModel.Username" />
+                            <ValidationMessage For="@(() => myModel.Username)" />
+                        </p>
+                        <p>
+                            <MatTextField Label="Password" @bind-Value="myModel.Password" Type="password" />
+                            <ValidationMessage For="@(() => myModel.Password)" />
+                        </p>
+                        <p>
+                            <MatTextField Label="MFA" @bind-Value="myModel.MFA" />
+                            <ValidationMessage For="@(() => myModel.MFA)" />
+                        </p>
+                        <p>
+                            <MatTextField Label="Comment" @bind-Value="myModel.Comment" />
+                            <ValidationMessage For="@(() => myModel.Comment)" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label="Start Date" @bind-Value="myModel.StartDate" />
+                            <ValidationMessage For="@(() => myModel.StartDate)" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label="eND Date" @bind-Value="myModel.EndDate" />
+                            <ValidationMessage For="@(() => myModel.EndDate)" />
+                        </p>
+                        <p>
+                            <MatSelect Label="Select" @bind-Value="myModel.Gender">
+                                <MatOptionString Value=""></MatOptionString>
+                                <MatOptionString Value="M">M</MatOptionString>
+                                <MatOptionString Value="W">W</MatOptionString>
+                            </MatSelect>
+                            <ValidationMessage For="@(() => myModel.Gender)" />
+                        </p>
+                        <p>
+                            <MatSelectItem Label="SelectItem" @bind-Value="@myModel.Gender" Items="@GenderItems"></MatSelectItem>
+                            <ValidationMessage For="@(() => myModel.Gender)" />
+                        </p>
+                        <p>
+                            <MatSelectValue Label="SelectValue" @bind-Value="@myModel.Gender" Items="@GenderItems" ValueSelector="@(v => v)"></MatSelectValue>
+                            <ValidationMessage For="@(() => myModel.Gender)" />
+                        </p>
+
+
+                    </div>
+
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                    </div>
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                        <MatButton Type="submit" Raised="true">Login</MatButton>
+                        <MatButton Raised="true" OnClick="Reset">Reset</MatButton>
+                    </div>
+                    <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
+                    </div>
+                </div>
             </div>
 
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-                <p>
-                    <MatTextField Label="Username" @bind-Value="myModel.Username"/>
-                </p>
-                <p>
-                    <MatTextField Label="Password" @bind-Value="myModel.Password" Type="password"/>
-                </p>
-                <p>
-                    <MatTextField Label="MFA" @bind-Value="myModel.MFA"/>
-                </p>
-                <p>
-                    <MatTextField Label="Comment" @bind-Value="myModel.Comment"/>
-                </p>
-                <p>
-                    <MatDatePicker Label="Start Date" @bind-Value="myModel.StartDate"/>
-                </p>
-                <p>
-                    <MatDatePicker Label="End Date" @bind-Value="myModel.EndDate"/>
-                </p>
-
-                <p>
-                    <MatSelect Label="Select" @bind-Value="myModel.Sex">
-                        <MatOptionString Value=""></MatOptionString>
-                        <MatOptionString Value="M">M</MatOptionString>
-                        <MatOptionString Value="W">W</MatOptionString>
-                    </MatSelect>
-                </p>
-                <p>
-                    <MatSelectItem Label="SelectItem" @bind-Value="@myModel.Sex" Items="@SexItems"></MatSelectItem>
-                </p>
-                <p>
-                    <MatSelectValue Label="SelectValue" @bind-Value="@myModel.Sex" Items="@SexItems" ValueSelector="@(v => v)"></MatSelectValue>
-                </p>
-
-                <MatDivider/>
-                <p>
-                    <MatTextField Label="Username" @bind-Value="myModel.Username"
-                                  ValidationDisabled="true"
-                                  HelperText="ValidationDisabled" HelperTextPersistent="true"/>
-                </p>
-                <p>
-                    <MatSelectItem Label="SelectItem" Value="@myModel.Sex" Items="@SexItems" ValidationDisabled="true" HelperText="ValidationDisabled"></MatSelectItem>
-                </p>
-
-                <ValidationSummary/>
-            </div>
+        </EditForm>
 
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4"
-                 style="text-align: center;">
-                -or-
-            </div>
+        @code {
 
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-                <p>
-                    <MatTextField Label="Username" @bind-Value="myModel.Username"/>
-                    <ValidationMessage For="@(() => myModel.Username)"/>
-                </p>
-                <p>
-                    <MatTextField Label="Password" @bind-Value="myModel.Password" Type="password"/>
-                    <ValidationMessage For="@(() => myModel.Password)"/>
-                </p>
-                <p>
-                    <MatTextField Label="MFA" @bind-Value="myModel.MFA"/>
-                    <ValidationMessage For="@(() => myModel.MFA)"/>
-                </p>
-                <p>
-                    <MatTextField Label="Comment" @bind-Value="myModel.Comment"/>
-                    <ValidationMessage For="@(() => myModel.Comment)"/>
-                </p>
-                <p>
-                    <MatDatePicker Label="Start Date" @bind-Value="myModel.StartDate"/>
-                    <ValidationMessage For="@(() => myModel.StartDate)"/>
-                </p>
-                <p>
-                    <MatDatePicker Label="eND Date" @bind-Value="myModel.EndDate"/>
-                    <ValidationMessage For="@(() => myModel.EndDate)"/>
-                </p>
-                <p>
-                    <MatSelect Label="Select" @bind-Value="myModel.Sex">
-                        <MatOptionString Value=""></MatOptionString>
-                        <MatOptionString Value="M">M</MatOptionString>
-                        <MatOptionString Value="W">W</MatOptionString>
-                    </MatSelect>
-                    <ValidationMessage For="@(() => myModel.Sex)"/>
-                </p>
-                <p>
-                    <MatSelectItem Label="SelectItem" @bind-Value="@myModel.Sex" Items="@SexItems"></MatSelectItem>
-                    <ValidationMessage For="@(() => myModel.Sex)"/>
-                </p>
-                <p>
-                    <MatSelectValue Label="SelectValue" @bind-Value="@myModel.Sex" Items="@SexItems" ValueSelector="@(v => v)"></MatSelectValue>
-                    <ValidationMessage For="@(() => myModel.Sex)"/>
-                </p>
 
+            class GenderDef
+            {
+                public string Name { get; set; }
 
-            </div>
-
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-            </div>
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-                <MatButton Type="submit" Raised="true">Login</MatButton>
-                <MatButton Raised="true" OnClick="Reset">Reset</MatButton>
-            </div>
-            <div class="mat-layout-grid-cell mat-layout-grid-cell-span-4">
-            </div>
-        </div>
-    </div>
+                public GenderDef(string name)
+                {
+                    Name = name;
+                }
+            }
 
-</EditForm>
-
-@code {
-
-
-    class SexDef
-    {
-        public string Name { get; set; }
-
-        public SexDef(string name)
-        {
-            Name = name;
-        }
-    }
-
-    string[] SexItems = new[]
-    {
+            string[] GenderItems = new[]
+            {
         "",
         "M",
         "W"
     };
 
-    [Inject]
-    IJSRuntime JS { get; set; }
-
-    async Task Success() =>
-        await JS.InvokeAsync<object>("alert", "Successful login!");
-
-    LoginModel myModel = new LoginModel();
+            [Inject]
+            IJSRuntime JS { get; set; }
 
-    void Reset()
-    {
-        myModel.Username = null;
-        myModel.Password = null;
-        myModel.MFA = null;
-        myModel.StartDate = DateTime.MinValue;
-        myModel.EndDate = null;
-        myModel.Comment = null;
-    }
+            async Task Success() =>
+                await JS.InvokeAsync<object>("alert", "Successful login!");
 
-    public class LoginModel
-    {
-        [Required]
-        public string Username { get; set; }
+            LoginModel myModel = new LoginModel();
 
-        [Required]
-        [MinLength(8)]
-        public string Password { get; set; }
+            void Reset()
+            {
+                myModel.Username = null;
+                myModel.Password = null;
+                myModel.MFA = null;
+                myModel.StartDate = DateTime.MinValue;
+                myModel.EndDate = null;
+                myModel.Comment = null;
+            }
 
-        [Required]
-        public string Sex { get; set; }
+            public class LoginModel
+            {
+                [Required]
+                public string Username { get; set; }
 
-        [Required]
-        [CustomValidation(typeof(LoginModel), nameof(RequiredDateTime))]
-        public DateTime StartDate { get; set; }
+                [Required]
+                [MinLength(8)]
+                public string Password { get; set; }
 
-        [Required]
-        public DateTime? EndDate { get; set; }
+                [Required]
+                public string Gender { get; set; }
 
-        public string Comment { get; set; }
+                [Required]
+                [CustomValidation(typeof(LoginModel), nameof(RequiredDateTime))]
+                public DateTime StartDate { get; set; }
 
-        [Required]
-        [CustomValidation(typeof(LoginModel), nameof(ValidateMFA))]
-        public string MFA { get; set; }
+                [Required]
+                public DateTime? EndDate { get; set; }
 
-        public static ValidationResult ValidateMFA(string mfa, ValidationContext vc)
-        {
-            return string.Equals("654321", mfa)
-                ? ValidationResult.Success
-                : new ValidationResult("Incorrect MFA OTP", new[] {vc.MemberName});
-        }
+                public string Comment { get; set; }
 
-        public static ValidationResult RequiredDateTime(DateTime value, ValidationContext vc)
-        {
-            return value > DateTime.MinValue
-                ? ValidationResult.Success
-                : new ValidationResult($"The {vc.MemberName} field is required.", new[] {vc.MemberName});
-        }
-    }
-
-}
-
-</Content>
-<SourceContent>
-	<BlazorFiddle Template="MatBlazor" Code=@(@"
-@using System.ComponentModel.DataAnnotations
-@using System.IO
-@using System.Net.Http.Headers
-<EditForm Model=""myModel"" OnValidSubmit=""Success"">
-    <DataAnnotationsValidator/>
-
-    <div class=""mat-layout-grid"">
-        <div class=""mat-layout-grid-inner"">
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
-                Summary-level Validation Messages
-            </div>
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
-            </div>
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
-                Field-level Validation Messages
-            </div>
-
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
-                <p>
-                    <MatTextField Label=""Username"" @bind-Value=""myModel.Username""/>
-                </p>
-                <p>
-                    <MatTextField Label=""Password"" @bind-Value=""myModel.Password"" Type=""password""/>
-                </p>
-                <p>
-                    <MatTextField Label=""MFA"" @bind-Value=""myModel.MFA""/>
-                </p>
-                <p>
-                    <MatTextField Label=""Comment"" @bind-Value=""myModel.Comment""/>
-                </p>
-                <p>
-                    <MatDatePicker Label=""Start Date"" @bind-Value=""myModel.StartDate""/>
-                </p>
-                <p>
-                    <MatDatePicker Label=""End Date"" @bind-Value=""myModel.EndDate""/>
-                </p>
-
-                <p>
-                    <MatSelect Label=""Select"" @bind-Value=""myModel.Sex"">
-                        <MatOptionString Value=""""></MatOptionString>
-                        <MatOptionString Value=""M"">M</MatOptionString>
-                        <MatOptionString Value=""W"">W</MatOptionString>
-                    </MatSelect>
-                </p>
-                <p>
-                    <MatSelectItem Label=""SelectItem"" @bind-Value=""@myModel.Sex"" Items=""@SexItems""></MatSelectItem>
-                </p>
-                <p>
-                    <MatSelectValue Label=""SelectValue"" @bind-Value=""@myModel.Sex"" Items=""@SexItems"" ValueSelector=""@(v => v)""></MatSelectValue>
-                </p>
-
-                <MatDivider/>
-                <p>
-                    <MatTextField Label=""Username"" @bind-Value=""myModel.Username""
-                                  ValidationDisabled=""true""
-                                  HelperText=""ValidationDisabled"" HelperTextPersistent=""true""/>
-                </p>
-                <p>
-                    <MatSelectItem Label=""SelectItem"" Value=""@myModel.Sex"" Items=""@SexItems"" ValidationDisabled=""true"" HelperText=""ValidationDisabled""></MatSelectItem>
-                </p>
-
-                <ValidationSummary/>
-            </div>
-
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4""
-                 style=""text-align: center;"">
-                -or-
-            </div>
+                [Required]
+                [CustomValidation(typeof(LoginModel), nameof(ValidateMFA))]
+                public string MFA { get; set; }
 
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
-                <p>
-                    <MatTextField Label=""Username"" @bind-Value=""myModel.Username""/>
-                    <ValidationMessage For=""@(() => myModel.Username)""/>
-                </p>
-                <p>
-                    <MatTextField Label=""Password"" @bind-Value=""myModel.Password"" Type=""password""/>
-                    <ValidationMessage For=""@(() => myModel.Password)""/>
-                </p>
-                <p>
-                    <MatTextField Label=""MFA"" @bind-Value=""myModel.MFA""/>
-                    <ValidationMessage For=""@(() => myModel.MFA)""/>
-                </p>
-                <p>
-                    <MatTextField Label=""Comment"" @bind-Value=""myModel.Comment""/>
-                    <ValidationMessage For=""@(() => myModel.Comment)""/>
-                </p>
-                <p>
-                    <MatDatePicker Label=""Start Date"" @bind-Value=""myModel.StartDate""/>
-                    <ValidationMessage For=""@(() => myModel.StartDate)""/>
-                </p>
-                <p>
-                    <MatDatePicker Label=""eND Date"" @bind-Value=""myModel.EndDate""/>
-                    <ValidationMessage For=""@(() => myModel.EndDate)""/>
-                </p>
-                <p>
-                    <MatSelect Label=""Select"" @bind-Value=""myModel.Sex"">
-                        <MatOptionString Value=""""></MatOptionString>
-                        <MatOptionString Value=""M"">M</MatOptionString>
-                        <MatOptionString Value=""W"">W</MatOptionString>
-                    </MatSelect>
-                    <ValidationMessage For=""@(() => myModel.Sex)""/>
-                </p>
-                <p>
-                    <MatSelectItem Label=""SelectItem"" @bind-Value=""@myModel.Sex"" Items=""@SexItems""></MatSelectItem>
-                    <ValidationMessage For=""@(() => myModel.Sex)""/>
-                </p>
-                <p>
-                    <MatSelectValue Label=""SelectValue"" @bind-Value=""@myModel.Sex"" Items=""@SexItems"" ValueSelector=""@(v => v)""></MatSelectValue>
-                    <ValidationMessage For=""@(() => myModel.Sex)""/>
-                </p>
+                public static ValidationResult ValidateMFA(string mfa, ValidationContext vc)
+                {
+                    return string.Equals("654321", mfa)
+                        ? ValidationResult.Success
+                        : new ValidationResult("Incorrect MFA OTP", new[] { vc.MemberName });
+                }
 
+                public static ValidationResult RequiredDateTime(DateTime value, ValidationContext vc)
+                {
+                    return value > DateTime.MinValue
+                        ? ValidationResult.Success
+                        : new ValidationResult($"The {vc.MemberName} field is required.", new[] { vc.MemberName });
+                }
+            }
 
-            </div>
+        }
 
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
-            </div>
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
-                <MatButton Type=""submit"" Raised=""true"">Login</MatButton>
-                <MatButton Raised=""true"" OnClick=""Reset"">Reset</MatButton>
-            </div>
-            <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+    </Content>
+    <SourceContent>
+        <BlazorFiddle Template="MatBlazor" Code=@(@"
+        @using System.ComponentModel.DataAnnotations
+        @using System.IO
+        @using System.Net.Http.Headers
+        <EditForm Model=""myModel"" OnValidSubmit=""Success"">
+            <DataAnnotationsValidator />
+
+            <div class=""mat-layout-grid"">
+                <div class=""mat-layout-grid-inner"">
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                        Summary-level Validation Messages
+                    </div>
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                    </div>
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                        Field-level Validation Messages
+                    </div>
+
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                        <p>
+                            <MatTextField Label=""Username"" @bind-Value=""myModel.Username"" />
+                        </p>
+                        <p>
+                            <MatTextField Label=""Password"" @bind-Value=""myModel.Password"" Type=""password"" />
+                        </p>
+                        <p>
+                            <MatTextField Label=""MFA"" @bind-Value=""myModel.MFA"" />
+                        </p>
+                        <p>
+                            <MatTextField Label=""Comment"" @bind-Value=""myModel.Comment"" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label=""Start Date"" @bind-Value=""myModel.StartDate"" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label=""End Date"" @bind-Value=""myModel.EndDate"" />
+                        </p>
+
+                        <p>
+                            <MatSelect Label=""Select"" @bind-Value=""myModel.Gender"">
+                                <MatOptionString Value=""""></MatOptionString>
+                                <MatOptionString Value=""M"">M</MatOptionString>
+                                <MatOptionString Value=""W"">W</MatOptionString>
+                            </MatSelect>
+                        </p>
+                        <p>
+                            <MatSelectItem Label=""SelectItem"" @bind-Value=""@myModel.Gender"" Items=""@GenderItems""></MatSelectItem>
+                        </p>
+                        <p>
+                            <MatSelectValue Label=""SelectValue"" @bind-Value=""@myModel.Gender"" Items=""@GenderItems"" ValueSelector=""@(v => v)""></MatSelectValue>
+                        </p>
+
+                        <MatDivider />
+                        <p>
+                            <MatTextField Label=""Username"" @bind-Value=""myModel.Username""
+                                          ValidationDisabled=""true""
+                                          HelperText=""ValidationDisabled"" HelperTextPersistent=""true"" />
+                        </p>
+                        <p>
+                            <MatSelectItem Label=""SelectItem"" Value=""@myModel.Gender"" Items=""@GenderItems"" ValidationDisabled=""true"" HelperText=""ValidationDisabled""></MatSelectItem>
+                        </p>
+
+                        <ValidationSummary />
+                    </div>
+
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4""
+                         style=""text-align: center;"">
+                        -or-
+                    </div>
+
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                        <p>
+                            <MatTextField Label=""Username"" @bind-Value=""myModel.Username"" />
+                            <ValidationMessage For=""@(() => myModel.Username)"" />
+                        </p>
+                        <p>
+                            <MatTextField Label=""Password"" @bind-Value=""myModel.Password"" Type=""password"" />
+                            <ValidationMessage For=""@(() => myModel.Password)"" />
+                        </p>
+                        <p>
+                            <MatTextField Label=""MFA"" @bind-Value=""myModel.MFA"" />
+                            <ValidationMessage For=""@(() => myModel.MFA)"" />
+                        </p>
+                        <p>
+                            <MatTextField Label=""Comment"" @bind-Value=""myModel.Comment"" />
+                            <ValidationMessage For=""@(() => myModel.Comment)"" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label=""Start Date"" @bind-Value=""myModel.StartDate"" />
+                            <ValidationMessage For=""@(() => myModel.StartDate)"" />
+                        </p>
+                        <p>
+                            <MatDatePicker Label=""eND Date"" @bind-Value=""myModel.EndDate"" />
+                            <ValidationMessage For=""@(() => myModel.EndDate)"" />
+                        </p>
+                        <p>
+                            <MatSelect Label=""Select"" @bind-Value=""myModel.Gender"">
+                                <MatOptionString Value=""""></MatOptionString>
+                                <MatOptionString Value=""M"">M</MatOptionString>
+                                <MatOptionString Value=""W"">W</MatOptionString>
+                            </MatSelect>
+                            <ValidationMessage For=""@(() => myModel.Gender)"" />
+                        </p>
+                        <p>
+                            <MatSelectItem Label=""SelectItem"" @bind-Value=""@myModel.Gender"" Items=""@GenderItems""></MatSelectItem>
+                            <ValidationMessage For=""@(() => myModel.Gender)"" />
+                        </p>
+                        <p>
+                            <MatSelectValue Label=""SelectValue"" @bind-Value=""@myModel.Gender"" Items=""@GenderItems"" ValueSelector=""@(v => v)""></MatSelectValue>
+                            <ValidationMessage For=""@(() => myModel.Gender)"" />
+                        </p>
+
+
+                    </div>
+
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                    </div>
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                        <MatButton Type=""submit"" Raised=""true"">Login</MatButton>
+                        <MatButton Raised=""true"" OnClick=""Reset"">Reset</MatButton>
+                    </div>
+                    <div class=""mat-layout-grid-cell mat-layout-grid-cell-span-4"">
+                    </div>
+                </div>
             </div>
-        </div>
-    </div>
 
-</EditForm>
+        </EditForm>
 
-@code {
+        @code {
 
 
-    class SexDef
-    {
-        public string Name { get; set; }
+            class GenderDef
+            {
+                public string Name { get; set; }
 
-        public SexDef(string name)
-        {
-            Name = name;
-        }
-    }
+                public GenderDef(string name)
+                {
+                    Name = name;
+                }
+            }
 
-    string[] SexItems = new[]
-    {
+            string[] GenderItems = new[]
+            {
         """",
         ""M"",
         ""W""
     };
 
-    [Inject]
-    IJSRuntime JS { get; set; }
+            [Inject]
+            IJSRuntime JS { get; set; }
 
-    async Task Success() =>
-        await JS.InvokeAsync<object>(""alert"", ""Successful login!"");
+            async Task Success() =>
+                await JS.InvokeAsync<object>(""alert"", ""Successful login!"");
 
-    LoginModel myModel = new LoginModel();
+            LoginModel myModel = new LoginModel();
 
-    void Reset()
-    {
-        myModel.Username = null;
-        myModel.Password = null;
-        myModel.MFA = null;
-        myModel.StartDate = DateTime.MinValue;
-        myModel.EndDate = null;
-        myModel.Comment = null;
-    }
+            void Reset()
+            {
+                myModel.Username = null;
+                myModel.Password = null;
+                myModel.MFA = null;
+                myModel.StartDate = DateTime.MinValue;
+                myModel.EndDate = null;
+                myModel.Comment = null;
+            }
 
-    public class LoginModel
-    {
-        [Required]
-        public string Username { get; set; }
+            public class LoginModel
+            {
+                [Required]
+                public string Username { get; set; }
 
-        [Required]
-        [MinLength(8)]
-        public string Password { get; set; }
+                [Required]
+                [MinLength(8)]
+                public string Password { get; set; }
 
-        [Required]
-        public string Sex { get; set; }
+                [Required]
+                public string Gender { get; set; }
 
-        [Required]
-        [CustomValidation(typeof(LoginModel), nameof(RequiredDateTime))]
-        public DateTime StartDate { get; set; }
+                [Required]
+                [CustomValidation(typeof(LoginModel), nameof(RequiredDateTime))]
+                public DateTime StartDate { get; set; }
 
-        [Required]
-        public DateTime? EndDate { get; set; }
+                [Required]
+                public DateTime? EndDate { get; set; }
 
-        public string Comment { get; set; }
+                public string Comment { get; set; }
 
-        [Required]
-        [CustomValidation(typeof(LoginModel), nameof(ValidateMFA))]
-        public string MFA { get; set; }
+                [Required]
+                [CustomValidation(typeof(LoginModel), nameof(ValidateMFA))]
+                public string MFA { get; set; }
 
-        public static ValidationResult ValidateMFA(string mfa, ValidationContext vc)
-        {
-            return string.Equals(""654321"", mfa)
-                ? ValidationResult.Success
-                : new ValidationResult(""Incorrect MFA OTP"", new[] {vc.MemberName});
-        }
+                public static ValidationResult ValidateMFA(string mfa, ValidationContext vc)
+                {
+                    return string.Equals(""654321"", mfa)
+                        ? ValidationResult.Success
+                        : new ValidationResult(""Incorrect MFA OTP"", new[] { vc.MemberName });
+                }
 
-        public static ValidationResult RequiredDateTime(DateTime value, ValidationContext vc)
-        {
-            return value > DateTime.MinValue
-                ? ValidationResult.Success
-                : new ValidationResult($""The {vc.MemberName} field is required."", new[] {vc.MemberName});
-        }
-    }
+                public static ValidationResult RequiredDateTime(DateTime value, ValidationContext vc)
+                {
+                    return value > DateTime.MinValue
+                        ? ValidationResult.Success
+                        : new ValidationResult($""The {vc.MemberName} field is required."", new[] { vc.MemberName });
+                }
+            }
 
-}
+        }
 
-")></BlazorFiddle>
-</SourceContent>
+    ")></BlazorFiddle>
+    </SourceContent>
 </DemoContainer>
\ No newline at end of file
diff --git a/src/MatBlazor.Demo/Demo/DemoMatRadioButton.razor b/src/MatBlazor.Demo/Demo/DemoMatRadioButton.razor
index cb3f96b4..b46ed386 100644
--- a/src/MatBlazor.Demo/Demo/DemoMatRadioButton.razor
+++ b/src/MatBlazor.Demo/Demo/DemoMatRadioButton.razor
@@ -51,7 +51,7 @@
 
     </Content>
     <SourceContent>
-    	<BlazorFiddle Template="MatBlazor" Code=@(@"
+        <BlazorFiddle Template="MatBlazor" Code=@(@"
         <MatH5>Gender</MatH5>
         <MatRadioGroup @bind-Value=""@Val1"" TValue=""string"">
             <MatRadioButton Value=""@string.Empty"" TValue=""string"">Default</MatRadioButton>
@@ -158,7 +158,7 @@
 
     </Content>
     <SourceContent>
-    	<BlazorFiddle Template="MatBlazor" Code=@(@"
+        <BlazorFiddle Template="MatBlazor" Code=@(@"
 
         <h3>Car Items: @carValue?.Name</h3>
         <MatRadioGroup @bind-Value=""@carValue"" Items=""@carOptions"">
@@ -218,15 +218,15 @@
 <h5 class="mat-h5">Enum</h5>
 <DemoContainer>
     <Content>
-        <MatRadioGroup @bind-Value="@sex" Items="@(Enum.GetValues(typeof(Sex)).Cast<Sex>())">
+        <MatRadioGroup @bind-Value="@gender" Items="@(Enum.GetValues(typeof(Gender)).Cast<Gender>())">
         </MatRadioGroup>
 
 
         @code
         {
-            Sex sex;
+            Gender gender;
 
-            enum Sex
+            enum Gender
             {
                 None,
                 Male,
@@ -238,16 +238,16 @@
 
     </Content>
     <SourceContent>
-    	<BlazorFiddle Template="MatBlazor" Code=@(@"
-        <MatRadioGroup @bind-Value=""@sex"" Items=""@(Enum.GetValues(typeof(Sex)).Cast<Sex>())"">
+        <BlazorFiddle Template="MatBlazor" Code=@(@"
+        <MatRadioGroup @bind-Value=""@gender"" Items=""@(Enum.GetValues(typeof(Gender)).Cast<Gender>())"">
         </MatRadioGroup>
 
 
         @code
         {
-            Sex sex;
+            Gender gender;
 
-            enum Sex
+            enum Gender
             {
                 None,
                 Male,
