How to get the dynamic theme change effect in numeric control inside the Xamarin.Forms text input layout (SfTextInputLayout)?
This article explains how to dynamically change the theme when having a UI contains the Syncfusion Xamarin Forms NumericTextBox inside the SfTextInputLayour as follows.
In case of requirement to have a specific control’s theme effect, add the SfNumericTextBoxStyles and SfTextInputLayoutStyles by following the provided guidelines in this link.
[XAML]
<ContentPage.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <syncTheme:LightTheme /> <buttons:SfButtonStyles /> <syncfusion:SfNumericTextBoxStyles/> <textInput:SfTextInputLayoutStyles/> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </ContentPage.Resources> <StackLayout Margin="20" VerticalOptions="CenterAndExpand"> <textinputlayout:SfTextInputLayout> <syncfusion:SfNumericTextBox Value="123.45" /> </textinputlayout:SfTextInputLayout> <Button Text="Light" x:Name="button" Clicked="Button_Clicked" HorizontalOptions="Center" VerticalOptions="Center" /> </StackLayout>
On the button click, remove the previously added theme and add a new required theme to the merged dictionaries as follows.
[C#]
private void Button_Clicked(object sender, EventArgs e) { ICollection<ResourceDictionary> mergedDictionaries = Application.Current.Resources.MergedDictionaries; if (button.Text == "Light") { var lightTheme = mergedDictionaries.OfType<LightTheme>().FirstOrDefault(); if (lightTheme != null) { mergedDictionaries.Remove(lightTheme); } mergedDictionaries.Add(new DarkTheme()); button.Text = "Dark"; } else { var darkTheme = mergedDictionaries.OfType<DarkTheme>().FirstOrDefault(); if (darkTheme != null) { mergedDictionaries.Remove(darkTheme); } mergedDictionaries.Add(new LightTheme()); button.Text = "Light"; } }
See also
How to set a custom background, text, and border
colors for the SfNumericTextBox
How to customize the font style of
SfNumericTextBox
Localization in Xamarin Numeric Entry
(SfNumericTextBox)
Number Formatting in Xamarin Numeric Entry
(SfNumericTextBox)
Return Type in Xamarin Numeric Entry
(SfNumericTextBox)
Hope you enjoyed learning about How to get the dynamic theme change effect in numeric control inside the Xamarin.Forms text input layout (SfTextInputLayout).
You can refer to our Xamarin.Forms feature tour page to learn about its other groundbreaking feature representations. You can explore our Xamarin.Forms documentation to understand how to present and manipulate data.
For current customers, you can check out our Angular components from the License and Downloads page. If you are new to Syncfusion, you can try our 30-day free trial to check out our Angular Diagram and other Angular components.
If you have any queries or require clarifications, please let us know in the comments section below. You can also contact us through our support forums, Direct-Trac, or feedback portal. We are always happy to assist you!