How can I help you?
Getting started with .NET MAUI Smart Text Editor
19 Dec 202519 minutes to read
This section explains how to add the .NET MAUI SmartTextEditor control. It covers only the basic features needed to get started with the Syncfusion AI-Powered Text Editor. Follow the steps below to add a .NET MAUI AI-Powered Text Editor control to your project.
NOTE
The Smart Text Editor is distributed as part of the
Syncfusion.Maui.SmartComponentspackage provides advanced AI-assisted features to enhance text editing and content management. Ensure your application has the required AI service configuration to enable these features.
Prerequisites
Before proceeding, ensure the following are set up:
- Install .NET SDK
- .NET 9 SDK or later must be installed.
- Set up a .NET MAUI Environment with Visual Studio. Supported Visual Studio Versions:
- Visual Studio 2022: Version 17.13 or later (e.g., 17.14.7) for .NET 9 development.
- Visual Studio 2026: Required for .NET 10 development.
Step 1: Create a New .NET MAUI Project
- Go to File > New > Project and choose the .NET MAUI App template.
- Name the project and choose a location. Then click Next.
- Select the .NET framework version and click Create.
Step 2: Install the Syncfusion® .NET MAUI SmartComponents NuGet Package
- In Solution Explorer, right-click the project and choose Manage NuGet Packages.
- Search for Syncfusion.Maui.SmartComponents and install the latest version.
- Ensure the necessary dependencies are installed correctly, and the project is restored.
Step 3: Register the handler
The Syncfusion.Maui.Core NuGet is a dependent package for all Syncfusion® controls of .NET MAUI. In the MauiProgram.cs file, register the handler for Syncfusion® core.
using Syncfusion.Maui.Core.Hosting;
namespace GettingStarted
{
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder.ConfigureSyncfusionCore();
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
});
return builder.Build();
}
}
}Step 4: Register the AI Service
To configure the AI services, you must call the ConfigureSyncfusionAIServices() method in the MauiProgram.cs file.
using Microsoft.Maui;
using Microsoft.Maui.Hosting;
using Microsoft.Maui.Controls.Compatibility;
using Microsoft.Maui.Controls.Hosting;
using Microsoft.Maui.Controls.Xaml;
using Syncfusion.Maui.SmartComponents.Hosting;
namespace GettingStarted
{
public class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
});
string key = "<MENTION-YOUR-KEY>";
Uri azureEndPoint = new Uri("<MENTION-YOUR-URL>");
string deploymentName = "<MENTION-YOUR-DEPLOYMENT-NAME>";
// Shows how to configure Azure AI service to the Smart Components.
AzureOpenAIClient azureOpenAIClient = new AzureOpenAIClient(azureEndPoint, new AzureKeyCredential(key));
IChatClient azureChatClient = azureOpenAIClient.GetChatClient(deploymentName).AsIChatClient();
builder.Services.AddChatClient(azureChatClient);
builder.ConfigureSyncfusionAIServices();
return builder.Build();
}
}
}NOTE
- You can refer to Configure Chat Client for services like
Azure,OpenAI, andOllama.- You can also refer to the Custom AI Service section to configure your own services, such as
Claude,Gemini,DeepSeek,Groq, etc.- If you are using a custom AI service, there is no need to register
ConfigureSyncfusionAIServices()inMauiProgram.
Step 5: Add .NET MAUI Smart Text Editor control
- To initialize the control, import the
Syncfusion.Maui.SmartComponentsnamespace into your code. - Initialize SfSmartTextEditor.
<ContentPage
. . .
xmlns:smarttexteditor="clr-namespace:Syncfusion.Maui.SmartComponents;assembly=Syncfusion.Maui.SmartComponents">
<smarttexteditor:SfSmartTextEditor />
</ContentPage>using Syncfusion.Maui.SmartComponents;
. . .
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
SfSmartTextEditor smarttexteditor = new SfSmartTextEditor();
this.Content = smarttexteditor;
}
}Prerequisites
Before proceeding, ensure the following are set up:
- Install .NET 9 SDK or later is installed.
- Set up a .NET MAUI environment with Visual Studio Code.
- Ensure that the .NET MAUI extension is installed and configured as described here.
Step 1: Create a New .NET MAUI Project
- Open the command palette by pressing
Ctrl+Shift+Pand type .NET:New Project and enter. - Choose the .NET MAUI App template.
- Select the project location, type the project name and press Enter.
- Then choose Create project.
Step 2: Install the Syncfusion® .NET MAUI SmartComponents NuGet Package
- Press Ctrl + ` (backtick) to open the integrated terminal in Visual Studio Code.
- Ensure you’re in the project root directory where your .csproj file is located.
- Run the command
dotnet add package Syncfusion.Maui.SmartComponentsto install the Syncfusion® .NET MAUI SmartComponents NuGet package. - To ensure all dependencies are installed, run
dotnet restore.
Step 3: Register the handler
The Syncfusion.Maui.Core NuGet is a dependent package for all Syncfusion® controls of .NET MAUI. In the MauiProgram.cs file, register the handler for Syncfusion® core.
using Syncfusion.Maui.Core.Hosting;
namespace GettingStarted
{
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder.ConfigureSyncfusionCore();
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
});
return builder.Build();
}
}
}Step 4: Register the AI Service
To configure the AI services, you must call the ConfigureSyncfusionAIServices() method in the MauiProgram.cs file.
using Microsoft.Maui;
using Microsoft.Maui.Hosting;
using Microsoft.Maui.Controls.Compatibility;
using Microsoft.Maui.Controls.Hosting;
using Microsoft.Maui.Controls.Xaml;
using Syncfusion.Maui.SmartComponents.Hosting;
namespace GettingStarted
{
public class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
});
string key = "<MENTION-YOUR-KEY>";
Uri azureEndPoint = new Uri("<MENTION-YOUR-URL>");
string deploymentName = "<MENTION-YOUR-DEPLOYMENT-NAME>";
// Shows how to configure Azure AI service to the Smart Components.
AzureOpenAIClient azureOpenAIClient = new AzureOpenAIClient(azureEndPoint, new AzureKeyCredential(key));
IChatClient azureChatClient = azureOpenAIClient.GetChatClient(deploymentName).AsIChatClient();
builder.Services.AddChatClient(azureChatClient);
builder.ConfigureSyncfusionAIServices();
return builder.Build();
}
}
}NOTE
- You can refer to Configure Chat Client for services like
Azure,OpenAI, andOllama.- You can also refer to the Custom AI Service section to configure your own services, such as
Claude,Gemini,DeepSeek,Groq, etc.- If you are using a custom AI service, there is no need to register
ConfigureSyncfusionAIServices()inMauiProgram.
Step 5: Add .NET MAUI Smart Text Editor control
- To initialize the control, import the
Syncfusion.Maui.SmartComponentsnamespace into your code. - Initialize SfSmartTextEditor.
<ContentPage
. . .
xmlns:smarttexteditor="clr-namespace:Syncfusion.Maui.SmartComponents;assembly=Syncfusion.Maui.SmartComponents">
<smarttexteditor:SfSmartTextEditor />
</ContentPage>using Syncfusion.Maui.SmartComponents;
. . .
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
SfSmartTextEditor smarttexteditor = new SfSmartTextEditor();
this.Content = smarttexteditor;
}
}Prerequisites
Before proceeding, ensure the following are set up:
- Ensure you have the latest version of JetBrains Rider.
- Install .NET 9 SDK or later is installed.
- Make sure the MAUI workloads are installed and configured as described here.
Step 1: Create a new .NET MAUI Project
- Go to File > New Solution, Select .NET (C#) and choose the .NET MAUI App template.
- Enter the Project Name, Solution Name, and Location.
- Select the .NET framework version and click Create.
Step 2: Install the Syncfusion® MAUI SmartComponents NuGet Package
- In Solution Explorer, right-click the project and choose Manage NuGet Packages.
- Search for Syncfusion.Maui.SmartComponents and install the latest version.
- Ensure the necessary dependencies are installed correctly, and the project is restored. If not, Open the Terminal in Rider and manually run:
dotnet restore
Step 3: Register the handler
The Syncfusion.Maui.Core NuGet is a dependent package for all Syncfusion® controls of .NET MAUI. In the MauiProgram.cs file, register the handler for Syncfusion® core.
using Syncfusion.Maui.Core.Hosting;
namespace GettingStarted
{
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder.ConfigureSyncfusionCore();
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
});
return builder.Build();
}
}
}Step 4: Register the AI Service
To configure the AI services, you must call the ConfigureSyncfusionAIServices() method in the MauiProgram.cs file.
using Microsoft.Maui;
using Microsoft.Maui.Hosting;
using Microsoft.Maui.Controls.Compatibility;
using Microsoft.Maui.Controls.Hosting;
using Microsoft.Maui.Controls.Xaml;
using Syncfusion.Maui.SmartComponents.Hosting;
namespace GettingStarted
{
public class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
});
string key = "<MENTION-YOUR-KEY>";
Uri azureEndPoint = new Uri("<MENTION-YOUR-URL>");
string deploymentName = "<MENTION-YOUR-DEPLOYMENT-NAME>";
// Shows how to configure Azure AI service to the Smart Components.
AzureOpenAIClient azureOpenAIClient = new AzureOpenAIClient(azureEndPoint, new AzureKeyCredential(key));
IChatClient azureChatClient = azureOpenAIClient.GetChatClient(deploymentName).AsIChatClient();
builder.Services.AddChatClient(azureChatClient);
builder.ConfigureSyncfusionAIServices();
return builder.Build();
}
}
}NOTE
- You can refer to Configure Chat Client for services like
Azure,OpenAI, andOllama.- You can also refer to the Custom AI Service section to configure your own services, such as
Claude,Gemini,DeepSeek,Groq, etc.- If you are using a custom AI service, there is no need to register
ConfigureSyncfusionAIServices()inMauiProgram.
Step 5: Add .NET MAUI Smart Text Editor control
- To initialize the control, import the
Syncfusion.Maui.SmartComponentsnamespace into your code. - Initialize SfSmartTextEditor.
<ContentPage
. . .
xmlns:smarttexteditor="clr-namespace:Syncfusion.Maui.SmartComponents;assembly=Syncfusion.Maui.SmartComponents">
<smarttexteditor:SfSmartTextEditor />
</ContentPage>using Syncfusion.Maui.SmartComponents;
. . .
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
SfSmartTextEditor smarttexteditor = new SfSmartTextEditor();
this.Content = smarttexteditor;
}
}Step 6: Configure user role and phrases for suggestions
Set the writing context and preferred expressions to guide completions:
- UserRole (required): Describes who is typing and the intent, shaping the tone and relevance of suggestions.
- UserPhrases (optional): A list of reusable statements that reflect your brand or frequent responses. Used for offline suggestions and to bias completions.
<ContentPage
.....
xmlns:smarttexteditor="clr-namespace:Syncfusion.Maui.SmartComponents;assembly=Syncfusion.Maui.SmartComponents">
<smarttexteditor:SfSmartTextEditor
Placeholder="Type your reply..."
UserRole="Support engineer responding to customer tickets">
<smarttexteditor:SfSmartTextEditor.UserPhrases>
<x:String>Thanks for reaching out.</x:String>
<x:String>Please share a minimal reproducible sample.</x:String>
<x:String>We’ll update you as soon as we have more details.</x:String>
</smarttexteditor:SfSmartTextEditor.UserPhrases>
</smarttexteditor:SfSmartTextEditor>
</ContentPage>NOTE
If no AI inference service is configured, the editor generates offline suggestions from your UserPhrases.
Step 7: Running the Application
Press F5 to build and run the application. Once compiled, the Smart Text Editor will be displayed with the provided content, and AI-powered editing features will be available after configuration.
Here is the result of the previous codes,

NOTE
You can refer to our .NET MAUI Smart Text Editor feature tour page for its groundbreaking feature representations. You can also explore our .NET MAUI Smart Text Editor Example that shows you how to render the Smart Text Editor in .NET MAUI.