Guide for implementing Syncfusion WinForms BannerTextProvider (watermark text provider) control. Use this when working with watermark text, placeholder text, or hint text in editor controls. Covers setup, text modes (FocusMode/EditMode), color/font customization, and supported control types in Windows Forms applications.
Use this skill when:
The BannerTextProvider is an extender control that displays watermark text in editor controls. It provides visual hints when controls are empty and automatically hides the text when users interact with the control.
Key Features:
📄 Read: references/getting-started.md
📄 Read: references/supported-controls.md
📄 Read: references/practical-examples.md
// 1. Create BannerTextProvider (usually in Form designer or Form_Load)
BannerTextProvider bannerTextProvider = new BannerTextProvider(this.components);
// 2. Create TextBoxExt control
TextBoxExt textBox = new TextBoxExt()
{
Size = new System.Drawing.Size(200, 30),
Location = new System.Drawing.Point(20, 20)
};
this.Controls.Add(textBox);
// 3. Set banner text
BannerTextInfo bannerInfo = new BannerTextInfo()
{
Text = "Enter your name...",
Visible = true,
Font = new System.Drawing.Font("Verdana", 9, System.Drawing.FontStyle.Italic),
Color = System.Drawing.Color.Gray,
Mode = BannerTextMode.EditMode // Disappears when user types
};
bannerTextProvider.SetBannerText(textBox, bannerInfo);
When you need basic hint text that disappears on user input:
bannerTextProvider.SetBannerText(textBox,
new BannerTextInfo("Type here...", true));
For a more prominent watermark that only hides when content is added:
var bannerInfo = new BannerTextInfo(
Text = "Email address",
Visible = true,
Font = new Font("Verdana", 8.25f, FontStyle.Italic),
Color = Color.RoyalBlue,
Mode = BannerTextMode.EditMode
);
bannerTextProvider.SetBannerText(emailTextBox, bannerInfo);
For temporary hints that disappear when control receives focus:
var bannerInfo = new BannerTextInfo(
Text = "Click to edit",
Visible = true,
Color = Color.LightGray,
Mode = BannerTextMode.FocusMode // Disappears on focus
);
bannerTextProvider.SetBannerText(textBox, bannerInfo);
Apply banner text to multiple editor controls efficiently:
var controls = new[] { nameTextBox, emailTextBox, phoneTextBox };
var placeholders = new[] { "Full Name", "Email Address", "Phone Number" };
for (int i = 0; i < controls.Length; i++)
{
bannerTextProvider.SetBannerText(controls[i],
new BannerTextInfo(placeholders[i], true));
}
| Mode | Behavior | Best For |
|---|---|---|
| FocusMode | Banner text disappears when control receives focus | Quick hint text, temporary guidance |
| EditMode | Banner text disappears only when control contains text | Persistent watermarks, clear differentiation |
Note: Clear the control's default Text property before setting banner text for optimal results.
⚠️ Clear default text: Always clear the Text property of the control before setting banner text
⚠️ Supported controls only: BannerTextProvider works with 14+ specific controls (see supported-controls.md)
⚠️ Assembly reference: Requires Syncfusion.Shared.Base assembly
⚠️ EditMode best practice: Use EditMode when you need the banner to persist until the user enters text
Next steps: Start with Getting Started to set up the component, then refer to other guides based on your specific needs.