syncfusion-wpf-smart-text-editor — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited syncfusion-wpf-smart-text-editor (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use this skill when users need to:
The Smart Text Editor (SfSmartTextEditor) is ideal for scenarios requiring intelligent typing assistance, branded response templates, and AI-enhanced user input.
The Syncfusion WPF Smart Text Editor is a multiline input control that uses predictive suggestions to speed up typing. It integrates with AI inference services for context-aware completions and provides inline or popup suggestion display modes. Key capabilities include:
Core Features:
Supported AI Providers:
📄 Read: references/getting-started.md
When to read: Starting a new Smart Text Editor implementation, setting up the development environment, or adding the control to an existing WPF project.
📄 Read: references/suggestion-display-modes.md
When to read: User needs to configure how suggestions appear, switch between display modes, or optimize for desktop vs touch devices.
📄 Read: references/customization.md
When to read: Customizing appearance to match application themes, changing text styles, configuring placeholders, or setting character limits.
📄 Read: references/commands.md
When to read: Implementing text change notifications, MVVM command patterns, or custom event handling logic.
📄 Read: references/ai-service-configuration.md
When to read: Configuring Azure OpenAI, OpenAI, or Ollama for AI-powered suggestions. Use this for official/built-in AI provider setup.
Scenario: Customer support application with branded responses.
<syncfusion:SfSmartTextEditor
Placeholder="Write your response..."
UserRole="Technical support engineer helping customers with product issues"
MaxLength="2000"
SuggestionDisplayMode="Inline">
<syncfusion:SfSmartTextEditor.UserPhrases>
<sys:String>Thanks for contacting Syncfusion support.</sys:String>
<sys:String>Could you please share a reproducible sample?</sys:String>
<sys:String>We've logged this as a bug and will update you soon.</sys:String>
<sys:String>Let us know if you need further assistance.</sys:String>
</syncfusion:SfSmartTextEditor.UserPhrases>
</syncfusion:SfSmartTextEditor>Scenario: Email client with custom theme and popup suggestions.
<syncfusion:SfSmartTextEditor
Placeholder="Compose your email..."
UserRole="Professional email author"
SuggestionDisplayMode="Popup"
MaxLength="5000">
<syncfusion:SfSmartTextEditor.Style>
<Style TargetType="{x:Type syncfusion:SfSmartTextEditor}">
<Setter Property="FontSize" Value="14"/>
<Setter Property="Foreground" Value="#333333"/>
<Setter Property="FontFamily" Value="Segoe UI"/>
</Style>
</syncfusion:SfSmartTextEditor.Style>
<syncfusion:SfSmartTextEditor.SuggestionPopupStyle>
<Style TargetType="syncfusion:SuggestionPopup">
<Setter Property="Background" Value="#0078D4"/>
<Setter Property="Foreground" Value="White"/>
</Style>
</syncfusion:SfSmartTextEditor.SuggestionPopupStyle>
</syncfusion:SfSmartTextEditor>Scenario: Track text changes for auto-save or validation.
<syncfusion:SfSmartTextEditor
x:Name="smartTextEditor"
TextChangedCommand="{Binding TextChangedCommand}"
Placeholder="Start typing..."/>public class EditorViewModel : INotifyPropertyChanged
{
public ICommand TextChangedCommand { get; }
public EditorViewModel()
{
TextChangedCommand = new RelayCommand(OnTextChanged);
}
private void OnTextChanged()
{
// Auto-save, validation, or tracking logic
Debug.WriteLine("Text changed - triggering auto-save");
}
}Scenario: App that works without AI connectivity.
<syncfusion:SfSmartTextEditor
Placeholder="Type your message..."
UserRole="Sales representative responding to leads">
<syncfusion:SfSmartTextEditor.UserPhrases>
<sys:String>Thank you for your interest in our products.</sys:String>
<sys:String>I'd be happy to schedule a demo.</sys:String>
<sys:String>Our pricing starts at $99 per month.</sys:String>
<sys:String>Let me connect you with our solutions team.</sys:String>
<sys:String>Feel free to reach out with any questions.</sys:String>
</syncfusion:SfSmartTextEditor.UserPhrases>
</syncfusion:SfSmartTextEditor>Note: If no AI service is configured, the editor automatically falls back to UserPhrases for suggestions.
| Property | Type | Description | Default |
|---|---|---|---|
Text | string | Gets or sets the text content | "" |
Placeholder | string | Placeholder text when editor is empty | null |
UserRole | string | Describes who is typing and intent (shapes AI suggestions) | null |
UserPhrases | List<string> | Custom phrase library for offline suggestions | null |
SuggestionDisplayMode | SuggestionDisplayMode | Display mode: Inline or Popup | Inline |
MaxLength | int | Maximum character limit | 0 (unlimited) |
TextChangedCommand | ICommand | Command triggered when text changes | null |
Style | Style | Text style (FontSize, Foreground, etc.) | Default |
PlaceholderStyle | Style | Placeholder styling | Default |
SuggestionInlineStyle | Style | Inline suggestion text style | Default |
SuggestionPopupStyle | Style | Popup suggestion background style | Default |
SuggestionDisplayMode="Inline"SuggestionDisplayMode="Popup"AzureOpenAIClient in App.xaml.csMaxLength propertyTextChangedCommand to ViewModelUserPhrases without AI serviceStyle, PlaceholderStyle, SuggestionInlineStyleNext Steps:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.