mcpField
S
syncfusion-winforms-integer-textbox

syncfusion-winforms-integer-textbox

github.com/syncfusionDevelopment280 installsUpdated 1w ago
Repository

About syncfusion-winforms-integer-textbox

This skill explains how to use Syncfusion IntegerTextBox for integer entry and validation in Windows Forms applications. It covers value bounds, formatting, null handling, events, and appearance settings.

Key features

  1. 01Restrict input to integers with real-time validation
  2. 02Set minimum and maximum values
  3. 03Configure group separators and leading zeros
  4. 04Handle negative, null, and read-only values
  5. 05Respond to value changes and validation errors

Use cases

  1. 01Create a bounded financial input field
  2. 02Enter and validate positive or negative temperatures
  3. 03Display a non-editable integer value
  4. 04Handle nullable integer input

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/syncfusion/winforms-ui-components-skills --skill syncfusion-winforms-integer-textbox

After installing, type/syncfusion-winforms-integer-textboxin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
appearance.md
data-formatting.md
events.md
getting-started.md

Details

From the project README

Implementing Syncfusion Windows Forms Integer TextBox

When to Use This Skill

Use this skill when you need to:

  • Create numeric input fields that accept only integer values
  • Set up value constraints (minimum and maximum bounds)
  • Format and display numbers with custom separators
  • Handle negative values and validation
  • Respond to value changes and validation errors in Windows Forms applications
  • Apply visual styling to numeric inputs (colors, borders)

Component Overview

The IntegerTextBox is a specialized Windows Forms control derived from the standard TextBox. It:

  • Accepts and displays only integer data types
  • Enforces min/max value constraints automatically
  • Supports custom number formatting with group separators
  • Provides events for value changes and validation errors
  • Allows visual customization through colors and styling
  • Handles null values and read-only states
  • Supports leading zeros and negative value handling

Key Characteristics:

  • Restricts input to integer values only
  • Validates input in real-time
  • Provides wrapper properties for null handling
  • Offers formatting options without themes or localization
  • Lightweight and responsive to user interactions

Documentation & Navigation Guide

Choose the reference that matches your current task:

Getting Started

📄 Read: references/getting-started.md

  • Installation and NuGet package setup
  • Adding control through designer
  • Adding control manually in C# code
  • Setting minimum and maximum value constraints
  • Initial configuration patterns
Visual Appearance

📄 Read: references/appearance.md

  • Setting background colors
  • Configuring text colors by value type (positive/negative/zero)
  • Border styling
  • Read-only state appearance
  • Color reset methods
Data Handling & Formatting

📄 Read: references/data-formatting.md

  • Number formatting options
  • Group separators and group sizes
  • Handling negative values and key inputs
  • Leading zeros support
  • Null value management
  • Read-only with separate colors
Events & Interactions

📄 Read: references/events.md

  • BindableValueChanged event usage
  • IntegerValueChanged event handling
  • ValidationError event patterns
  • FormattedTextChanged and ClipTextChanged
  • Event handler implementation examples

Quick Start Example

Here's a minimal working example:

using Syncfusion.Windows.Forms.Tools;

// Add assembly reference: Syncfusion.Shared.Base
// Include namespace: Syncfusion.Windows.Forms.Tools

// Create and add control
IntegerTextBox integerTextBox1 = new IntegerTextBox();
this.Controls.Add(integerTextBox1);

// Set constraints
integerTextBox1.MaxValue = 999999;
integerTextBox1.MinValue = -999999;
integerTextBox1.IntegerValue = 0;

Common Patterns

Pattern 1: Value-Based Color Coding

Display positive values in green, negative in red, zero in gray:

integerTextBox1.PositiveColor = System.Drawing.Color.Green;
integerTextBox1.NegativeColor = System.Drawing.Color.Red;
integerTextBox1.ZeroColor = System.Drawing.Color.Gray;
Pattern 2: Number Formatting with Separators

Format large numbers with custom separators (e.g., "1,234,567"):

integerTextBox1.NumberGroupSeparator = ",";
integerTextBox1.NumberGroupSizes = new int[] { 3 };
integerTextBox1.IntegerValue = 1234567;
Pattern 3: Handling Value Changes

Respond when the user enters a new value:

integerTextBox1.BindableValueChanged += 
    (sender, e) => MessageBox.Show($"New value: {integerTextBox1.IntegerValue}");
Pattern 4: Validation with Error Handling

Catch and respond to validation errors:

integerTextBox1.ValidationError += (sender, e) =>
{
    MessageBox.Show("Invalid input! Please enter a valid integer.");
};

Key Properties

PropertyPurposeExample
MaxValueUpper bound for integer valuesintegerTextBox1.MaxValue = 100;
MinValueLower bound for integer valuesintegerTextBox1.MinValue = 0;
IntegerValueGet/set the current integer valueint val = integerTextBox1.IntegerValue;
BindableValueWrapper for null-safe value accessintegerTextBox1.BindableValue = null;
AllowLeadingZerosAllow zeros before number (e.g., "0123")integerTextBox1.AllowLeadingZeros = true;
NumberGroupSeparatorCharacter to separate digit groupsintegerTextBox1.NumberGroupSeparator = ",";
NumberGroupSizesSize of each digit groupintegerTextBox1.NumberGroupSizes = new int[] { 3 };
PositiveColorColor for positive valuesintegerTextBox1.PositiveColor = Color.Green;
NegativeColorColor for negative valuesintegerTextBox1.NegativeColor = Color.Red;
ZeroColorColor when value is zerointegerTextBox1.ZeroColor = Color.Gray;
BackColorControl background colorintegerTextBox1.BackColor = Color.White;
ReadOnlyBackColorBackground when read-onlyintegerTextBox1.ReadOnlyBackColor = Color.LightGray;
ReadOnlyPrevent user editingintegerTextBox1.ReadOnly = true;
DeleteSelectionOnNegativeDelete selected text when minus pressedintegerTextBox1.DeleteSelectionOnNegative = true;

Common Use Cases

Use Case 1: Financial Input with Constraints Create a textbox for dollar amounts (0 to 999,999):

integerTextBox1.MinValue = 0;
integerTextBox1.MaxValue = 999999;
integerTextBox1.NumberGroupSeparator = ",";
integerTextBox1.NumberGroupSizes = new int[] { 3 };

Use Case 2: Temperature Input (Negative & Positive) Allow temperatures from -50 to 50 degrees:

integerTextBox1.MinValue = -50;
integerTextBox1.MaxValue = 50;
integerTextBox1.NegativeColor = Color.Blue;
integerTextBox1.PositiveColor = Color.Red;

Use Case 3: Read-Only Display Show a value that users cannot modify:

integerTextBox1.IntegerValue = 42;
integerTextBox1.ReadOnly = true;
integerTextBox1.ReadOnlyBackColor = Color.LightGray;

Use Case 4: Null-Able Integer with Validation Allow null values with error handling:

integerTextBox1.BindableValueChanged += (sender, e) =>
{
    if (integerTextBox1.BindableValue == null)
        MessageBox.Show("Value cleared (null)");
    else
        MessageBox.Show($"Value: {integerTextBox1.IntegerValue}");
};

Next Steps

Comments

Markdown supported