LeXtudio.TextBox 0.2.8

Prefix Reserved
dotnet add package LeXtudio.TextBox --version 0.2.8
                    
NuGet\Install-Package LeXtudio.TextBox -Version 0.2.8
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="LeXtudio.TextBox" Version="0.2.8" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="LeXtudio.TextBox" Version="0.2.8" />
                    
Directory.Packages.props
<PackageReference Include="LeXtudio.TextBox" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add LeXtudio.TextBox --version 0.2.8
                    
#r "nuget: LeXtudio.TextBox, 0.2.8"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package LeXtudio.TextBox@0.2.8
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=LeXtudio.TextBox&version=0.2.8
                    
Install as a Cake Addin
#tool nuget:?package=LeXtudio.TextBox&version=0.2.8
                    
Install as a Cake Tool

LeXtudio.TextBox

A drop-in TextBox control for Uno Platform and WinUI that surfaces correct IME / input-method support on every desktop platform.

When to use this instead of the built-in TextBox

Uno Platform's built-in TextBox uses the platform's native text widget on Windows but a custom Skia renderer on Linux and macOS desktop targets. Composition input (Japanese, Chinese, Korean, etc.) can be unreliable on those Skia targets. LeXtudio.TextBox wraps the built-in control and connects it to LeXtudio.UI.Text.Core — a managed CoreText/IME bridge — so IME composition works correctly on all Skia desktop platforms.

On Windows (WinUI / Windows App SDK) the class extends Microsoft.UI.Xaml.Controls.TextBox directly; the CoreText bridge is not involved and there is no behavioural difference from the inbox control.

Supported targets

Target framework Behaviour
net9.0-desktop (Uno Skia) Full IME bridge via LeXtudio.UI.Text.Core
net9.0-windows10.0.19041.0 Thin subclass of the native WinUI TextBox

Installation

dotnet add package LeXtudio.TextBox

Or add a PackageReference to your project file:

<PackageReference Include="LeXtudio.TextBox" Version="1.*" />

Usage

xmlns:lx="using:LeXtudio.UI.Controls"

<lx:TextBox PlaceholderText="Type here…"
            AcceptsReturn="True"
            TextWrapping="Wrap" />
using LeXtudio.UI.Controls;

var box = new TextBox
{
    PlaceholderText = "Type here…",
    AcceptsReturn = true,
};
box.TextChanged += (s, e) => Console.WriteLine(box.Text);

The control implements IDisposable; call Dispose() if you remove it from the visual tree manually (it is called automatically via Unloaded).

API surface

All properties delegate to the inner Microsoft.UI.Xaml.Controls.TextBox.

Member Type Notes
Text string Two-way bindable
PlaceholderText string
PlaceholderForeground Brush? Added on Windows target via DependencyProperty
Header object?
AcceptsReturn bool
TextWrapping TextWrapping
TextChanged event Forwarded from the inner control
SelectAll() method
Dispose() method Tears down the CoreText context

License

This project is licensed under the MIT License. See the LICENSE file for details.

(c) 2026 LeXtudio Inc. All rights reserved.

Product Compatible and additional computed target framework versions.
.NET net9.0-desktop1.0 is compatible.  net9.0-windows10.0.19041 is compatible.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.2.8 0 5/13/2026