Skip to main content

UWP - How to change TextBox style

UWP - Change TextBox Style
The TextBox class represents a control that can be used to display and edit plain text. A TextBox can be single or multi-line. The TextBox control enables the UWP app user to enter text into a UWP app. The TextBox is typically used to capture a single line of text but the UWP developers can configure it to capture multiple lines of text. The text displays on the screen in a simple uniform plaintext format.

The following Universal Windows Platform application development tutorial demonstrates how we can set or change the TextBox styles. Here we will change two TextBoxes styles. For the first TextBox control, we will change its styles by using XAML properties. And for the second TextBox control, we will change its various style properties programmatically.

The TextBox class FontFamily property gets or sets the font used to display text in the control. This TextBox property is inherited from Control. This property value is a FontFamily which is the font used to display text in the control. So using this property the UWP developers can change the TextBox default font.

The TextBox class FontSize property gets or sets the size of the text in this control. This property value is a Double value which is the size of the text in the Control, in pixels. The default is 11. So using this property the UWP developers can change the TextBox default font size.

The TextBox class FontStyle property gets or sets the style in which the text is rendered. This property value is a FontStyle enumeration value which is one of the values that specifies the style in which the text is rendered. The default value is Normal. The FontStyle enumeration represents the style of a font face, for example, normal or italic.

The TextBox class CharacterSpacing property gets or sets the uniform spacing between characters, in units of 1/1000 of an em.

The TextBox class Background property gets or sets a brush that provides the background of the control. This property value is a Brush that provides the background of the control. The default value of this property is null, a null brush that is evaluated as Transparent for rendering. So using this property the UWP developers can change the TextBox background color.
MainPage.xaml

<Page
    x:Class="UniversalAppTutorials.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:UniversalAppTutorials"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    >
    <StackPanel Padding="50" Background="AliceBlue">
        <TextBox
            x:Name="TextBox1"
            Text="Suhailah Alam"
            Header="Name"
            Margin="5"
            FontFamily="MV Boli"
            FontSize="30"
            FontStyle="Italic"
            Foreground="Crimson"
            FontWeight="Bold"
            CharacterSpacing="200"
            />
        <TextBox
            x:Name="TextBox2"
            Margin="5"
            />
    </StackPanel>
</Page>
MainPage.xaml.cs

using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Media;
using Windows.UI.Text;
using Windows.UI;


namespace UniversalAppTutorials
{
    public sealed partial class MainPage : Page
    {
        public MainPage()
        {
            this.InitializeComponent();
            StyleSecondTextBox();
        }

        // Set the second TextBox style programmatically
        void StyleSecondTextBox() {
            // Set TextBox font family
            TextBox2.FontFamily = new FontFamily("Cambria");

            // Set TextBox font/text size
            TextBox2.FontSize = 30;

            // Set TextBox font style
            TextBox2.FontStyle = FontStyle.Normal;

            // Set TextBox character spacing
            TextBox2.CharacterSpacing = 150;

            // Set TextBox background and text color
            TextBox2.Background = new SolidColorBrush(Colors.Snow);
            TextBox2.Foreground = new SolidColorBrush(Colors.BlueViolet);

            // Set TextBox text and header
            TextBox2.Text = "Khulna, Bangladesh";
            TextBox2.Header = "Address";
        }
    }
}

Popular posts from this blog

Restricting Jetpack Compose TextField to Numeric Input Only

Jetpack Compose has revolutionized Android development with its declarative approach, enabling developers to build modern, responsive UIs more efficiently. Among the many components provided by Compose, TextField is a critical building block for user input. However, ensuring that a TextField accepts only numeric input can pose challenges, especially when considering edge cases like empty fields, invalid characters, or localization nuances. In this blog post, we'll explore how to restrict a Jetpack Compose TextField to numeric input only, discussing both basic and advanced implementations. Why Restricting Input Matters Restricting user input to numeric values is a common requirement in apps dealing with forms, payment entries, age verifications, or any data where only numbers are valid. Properly validating input at the UI level enhances user experience, reduces backend validation overhead, and minimizes errors during data processing. Compose provides the flexibility to implement ...

jetpack compose - TextField remove underline

Compose TextField Remove Underline The TextField is the text input widget of android jetpack compose library. TextField is an equivalent widget of the android view system’s EditText widget. TextField is used to enter and modify text. The following jetpack compose tutorial will demonstrate to us how we can remove (actually hide) the underline from a TextField widget in an android application. We have to apply a simple trick to remove (hide) the underline from the TextField. The TextField constructor’s ‘colors’ argument allows us to set or change colors for TextField’s various components such as text color, cursor color, label color, error color, background color, focused and unfocused indicator color, etc. Jetpack developers can pass a TextFieldDefaults.textFieldColors() function with arguments value for the TextField ‘colors’ argument. There are many arguments for this ‘TextFieldDefaults.textFieldColors()’function such as textColor, disabledTextColor, backgroundColor, cursorC...

jetpack compose - Image clickable

Compose Image Clickable The Image widget allows android developers to display an image object to the app user interface using the jetpack compose library. Android app developers can show image objects to the Image widget from various sources such as painter resources, vector resources, bitmap, etc. Image is a very essential component of the jetpack compose library. Android app developers can change many properties of an Image widget by its modifiers such as size, shape, etc. We also can specify the Image object scaling algorithm, content description, etc. But how can we set a click event to an Image widget in a jetpack compose application? There is no built-in property/parameter/argument to set up an onClick event directly to the Image widget. This android application development tutorial will demonstrate to us how we can add a click event to the Image widget and make it clickable. Click event of a widget allow app users to execute a task such as showing a toast message by cli...