using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
public class ItalicUserMessageDialog : UserMessageDialog {
public ItalicUserMessageDialog() {
InitializeComponent();
}
public bool Italic {
set { checkBoxItalic.Checked = value; }
get { return checkBoxItalic.Checked; }
}
private void InitializeComponent() {
this.checkBoxItalic = new System.Windows.Forms.CheckBox();
this.SuspendLayout();
this.checkBoxItalic.AutoSize = true;
this.checkBoxItalic.Location = new System.Drawing.Point(12, 79);
this.checkBoxItalic.Size = new System.Drawing.Size(50, 17);
this.checkBoxItalic.Text = "Italic?";
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(352, 113);
this.Controls.Add(this.checkBoxItalic);
this.ResumeLayout(false);
this.PerformLayout();
}
private System.Windows.Forms.CheckBox checkBoxItalic;
}
public class UserMessageDialog : Form {
public UserMessageDialog() {
InitializeComponent();
}
public string Message {
set { txtUserInput.Text = value; }
get { return txtUserInput.Text; }
}
private void InitializeComponent() {
this.btnCancel = new System.Windows.Forms.Button();
this.btnOK = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.txtUserInput = new System.Windows.Forms.TextBox();
this.SuspendLayout();
this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnCancel.Location = new System.Drawing.Point(263, 73);
this.btnCancel.Size = new System.Drawing.Size(75, 23);
this.btnCancel.Text = "Cancel";
this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
this.btnOK.Location = new System.Drawing.Point(182, 73);
this.btnOK.Size = new System.Drawing.Size(75, 23);
this.btnOK.Text = "OK";
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(12, 9);
this.label1.Size = new System.Drawing.Size(132, 13);
this.label1.Text = "Please Enter your Message";
this.txtUserInput.Location = new System.Drawing.Point(13, 35);
this.txtUserInput.Size = new System.Drawing.Size(325, 20);
this.AcceptButton = this.btnOK;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.btnCancel;
this.ClientSize = new System.Drawing.Size(350, 113);
this.Controls.Add(this.txtUserInput);
this.Controls.Add(this.label1);
this.Controls.Add(this.btnOK);
this.Controls.Add(this.btnCancel);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.ResumeLayout(false);
this.PerformLayout();
}
private System.Windows.Forms.Button btnCancel;
private System.Windows.Forms.Button btnOK;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox txtUserInput;
}
public class MainWindow : Form {
private string userMessage = "Default Message";
private bool textIsItalic = false;
public MainWindow() {
InitializeComponent();
}
private void exitToolStripMenuItem_Click(object sender, EventArgs e) {
Application.Exit();
}
private void configureToolStripMenuItem_Click(object sender, EventArgs e) {
ItalicUserMessageDialog dlg = new ItalicUserMessageDialog();
dlg.Message = userMessage;
dlg.Italic = textIsItalic;
if (DialogResult.OK == dlg.ShowDialog()) {
userMessage = dlg.Message;
textIsItalic = dlg.Italic;
Invalidate();
}
dlg.Dispose();
}
private void MainWindow_Paint(object sender, PaintEventArgs e) {
Graphics g = e.Graphics;
Font f = null;
if (textIsItalic)
f = new Font("Times New Roman", 24, FontStyle.Italic);
else
f = new Font("Times New Roman", 24);
g.DrawString(userMessage, f, Brushes.DarkBlue,50, 50);
}
private void InitializeComponent() {
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.configureToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fileToolStripMenuItem,
this.toolsToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Size = new System.Drawing.Size(390, 24);
this.menuStrip1.Text = "menuStrip1";
this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.exitToolStripMenuItem});
this.fileToolStripMenuItem.Text = "&File";
this.exitToolStripMenuItem.Text = "E&xit";
this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.configureToolStripMenuItem});
this.toolsToolStripMenuItem.Text = "&Tools";
this.configureToolStripMenuItem.Text = "&Configure";
this.configureToolStripMenuItem.Click += new System.EventHandler(this.configureToolStripMenuItem_Click);
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(390, 182);
this.Controls.Add(this.menuStrip1);
this.MainMenuStrip = this.menuStrip1;
this.Paint += new System.Windows.Forms.PaintEventHandler(this.MainWindow_Paint);
this.menuStrip1.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
}
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem toolsToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem configureToolStripMenuItem;
[STAThread]
static void Main() {
Application.EnableVisualStyles();
Application.Run(new MainWindow());
}
}
Author: coder
Set Form window cursor to wait cursor
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
public class MainForm : System.Windows.Forms.Form
{
private System.ComponentModel.Container components;
public MainForm()
{
InitializeComponent();
BackColor = Color.Tomato;
Opacity = 0.5d;
Text = "www.kutayzorlu.com/java2s/com";
Cursor = Cursors.WaitCursor;
this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form1_Paint);
}
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
private void InitializeComponent()
{
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(292, 273);
this.Text = "Form1";
}
[STAThread]
static void Main()
{
Application.Run(new MainForm());
}
private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
Graphics g = e.Graphics;
g.DrawString("www.kutayzorlu.com/java2s/com",
new Font("Times New Roman", 20),
new SolidBrush(Color.Black), 40, 10);
}
}
All Mouse Cursors
using System;
using System.Drawing;
using System.Windows.Forms;
class MouseCursors: Form
{
Cursor[] acursor =
{
Cursors.AppStarting, Cursors.Arrow, Cursors.Cross,
Cursors.Default, Cursors.Hand, Cursors.Help,
Cursors.HSplit, Cursors.IBeam, Cursors.No,
Cursors.NoMove2D, Cursors.NoMoveHoriz, Cursors.NoMoveVert,
Cursors.PanEast, Cursors.PanNE, Cursors.PanNorth,
Cursors.PanNW, Cursors.PanSE, Cursors.PanSouth,
Cursors.PanSW, Cursors.PanWest, Cursors.SizeAll,
Cursors.SizeNESW, Cursors.SizeNS, Cursors.SizeNWSE,
Cursors.SizeWE, Cursors.UpArrow, Cursors.VSplit,
Cursors.WaitCursor
};
string[] astrCursor =
{
“AppStarting”, “Arrow”, “Cross”,
“Default”, “Hand”, “Help”,
“HSplit”, “IBeam”, “No”,
“NoMove2D”, “NoMoveHoriz”, “NoMoveVert”,
“PanEast”, “PanNE”, “PanNorth”,
“PanNW”, “PanSE”, “PanSouth”,
“PanSW”, “PanWest”, “SizeAll”,
“SizeNESW”, “SizeNS”, “SizeNWSE”,
“SizeWE”, “UpArrow”, “VSplit”,
“WaitCursor”
};
public static void Main()
{
Application.Run(new MouseCursors());
}
public MouseCursors()
{
Text = “Mouse Cursors”;
ResizeRedraw = true;
}
protected override void OnMouseMove(MouseEventArgs mea)
{
int x = Math.Max(0, Math.Min(3, mea.X / (ClientSize.Width / 4)));
int y = Math.Max(0, Math.Min(6, mea.Y / (ClientSize.Height / 7)));
Cursor.Current = acursor[4 * y + x];
}
protected override void OnPaint(PaintEventArgs pea)
{
Graphics grfx = pea.Graphics;
Brush brush = new SolidBrush(ForeColor);
Pen pen = new Pen(ForeColor);
StringFormat strfmt = new StringFormat();
strfmt.LineAlignment = strfmt.Alignment = StringAlignment.Center;
for (int y = 0; y < 7; y++){ for (int x = 0; x < 4; x++) { Rectangle rect = Rectangle.FromLTRB( x * ClientSize.Width / 4, y * ClientSize.Height / 7, (x + 1) * ClientSize.Width / 4, (y + 1) * ClientSize.Height / 7); grfx.DrawRectangle(pen, rect); grfx.DrawString(astrCursor[4 * y + x], Font, brush, rect, strfmt); } } } } [/csharp]
Format And Parse
/*
User Interfaces in C#: Windows Forms and Custom Controls
by Matthew MacDonald
Publisher: Apress
ISBN: 1590590457
*/
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace FormatAndParse
{
/// <summary>
/// Summary description for FormatAndParse.
/// </summary>
public class FormatAndParse : System.Windows.Forms.Form
{
internal System.Windows.Forms.GroupBox GroupBox1;
internal System.Windows.Forms.TextBox txtUnitCost;
internal System.Windows.Forms.Label Label2;
internal System.Windows.Forms.Label Label1;
internal System.Windows.Forms.Label lblStatus;
internal System.Windows.Forms.ComboBox cboModelName;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public FormatAndParse()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.GroupBox1 = new System.Windows.Forms.GroupBox();
this.txtUnitCost = new System.Windows.Forms.TextBox();
this.Label2 = new System.Windows.Forms.Label();
this.Label1 = new System.Windows.Forms.Label();
this.lblStatus = new System.Windows.Forms.Label();
this.cboModelName = new System.Windows.Forms.ComboBox();
this.GroupBox1.SuspendLayout();
this.SuspendLayout();
//
// GroupBox1
//
this.GroupBox1.Controls.AddRange(new System.Windows.Forms.Control[] {
this.txtUnitCost,
this.Label2});
this.GroupBox1.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.GroupBox1.Location = new System.Drawing.Point(12, 34);
this.GroupBox1.Name = "GroupBox1";
this.GroupBox1.Size = new System.Drawing.Size(352, 136);
this.GroupBox1.TabIndex = 22;
this.GroupBox1.TabStop = false;
//
// txtUnitCost
//
this.txtUnitCost.Location = new System.Drawing.Point(150, 35);
this.txtUnitCost.Name = "txtUnitCost";
this.txtUnitCost.Size = new System.Drawing.Size(128, 21);
this.txtUnitCost.TabIndex = 14;
this.txtUnitCost.Text = "";
//
// Label2
//
this.Label2.Location = new System.Drawing.Point(16, 40);
this.Label2.Name = "Label2";
this.Label2.Size = new System.Drawing.Size(128, 16);
this.Label2.TabIndex = 17;
this.Label2.Text = "Display Value for Price:";
//
// Label1
//
this.Label1.Location = new System.Drawing.Point(14, 10);
this.Label1.Name = "Label1";
this.Label1.Size = new System.Drawing.Size(64, 16);
this.Label1.TabIndex = 21;
this.Label1.Text = "Product:";
//
// lblStatus
//
this.lblStatus.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.lblStatus.Dock = System.Windows.Forms.DockStyle.Bottom;
this.lblStatus.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.lblStatus.ForeColor = System.Drawing.SystemColors.HotTrack;
this.lblStatus.Location = new System.Drawing.Point(0, 198);
this.lblStatus.Name = "lblStatus";
this.lblStatus.Size = new System.Drawing.Size(372, 24);
this.lblStatus.TabIndex = 20;
//
// cboModelName
//
this.cboModelName.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cboModelName.Location = new System.Drawing.Point(78, 8);
this.cboModelName.Name = "cboModelName";
this.cboModelName.Size = new System.Drawing.Size(248, 21);
this.cboModelName.TabIndex = 19;
//
// FormatAndParse
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 14);
this.ClientSize = new System.Drawing.Size(372, 222);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.GroupBox1,
this.Label1,
this.lblStatus,
this.cboModelName});
this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
this.Name = "FormatAndParse";
this.Text = "FormatAndParse";
this.Load += new System.EventHandler(this.FormatAndParse_Load);
this.GroupBox1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private void FormatAndParse_Load(object sender, System.EventArgs e)
{
DataSet dsStore = new DataSet();
dsStore.ReadXmlSchema(Application.StartupPath + "store.xsd");
dsStore.ReadXml(Application.StartupPath + "store.xml");
cboModelName.DataSource = dsStore.Tables["Products"];
cboModelName.DisplayMember = "ModelName";
// Create the binding.
Binding costBinding = new Binding("Text", dsStore.Tables["Products"],
"UnitCost");
// Connect the methods for formatting and parsing data.
costBinding.Format += new ConvertEventHandler(DecimalToCurrencyString);
costBinding.Parse += new ConvertEventHandler(CurrencyStringToDecimal);
// Add the binding.
txtUnitCost.DataBindings.Add(costBinding);
}
private void DecimalToCurrencyString(object sender, ConvertEventArgs e)
{
if (e.DesiredType == typeof(string))
{
// Use the ToString method to format the value as currency ("c").
e.Value = ((decimal)e.Value).ToString("c");
}
}
private void CurrencyStringToDecimal(object sender, ConvertEventArgs e)
{
if (e.DesiredType == typeof(decimal))
{
// Convert the string back to decimal using the shared Parse method.
e.Value = Decimal.Parse(e.Value.ToString(),
System.Globalization.NumberStyles.Currency, null);
}
}
private void TableChanged(object sender, System.Data.DataColumnChangeEventArgs e)
{
lblStatus.Text = "Detected change. Column " + e.Column.ColumnName;
lblStatus.Text += " updated to " + e.ProposedValue.ToString() + ".";
}
[STAThread]
static void Main()
{
Application.Run(new FormatAndParse());
}
}
}
FormatAndParse.zip( 48 k)
Format And Parse Image
/*
User Interfaces in C#: Windows Forms and Custom Controls
by Matthew MacDonald
Publisher: Apress
ISBN: 1590590457
*/
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace FormatAndParse
{
/// <summary>
/// Summary description for FormatAndParseImage.
/// </summary>
public class FormatAndParseImage : System.Windows.Forms.Form
{
internal System.Windows.Forms.GroupBox GroupBox1;
internal System.Windows.Forms.PictureBox picProduct;
internal System.Windows.Forms.Label Label1;
internal System.Windows.Forms.Label lblStatus;
internal System.Windows.Forms.ComboBox cboModelName;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public FormatAndParseImage()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.GroupBox1 = new System.Windows.Forms.GroupBox();
this.picProduct = new System.Windows.Forms.PictureBox();
this.Label1 = new System.Windows.Forms.Label();
this.lblStatus = new System.Windows.Forms.Label();
this.cboModelName = new System.Windows.Forms.ComboBox();
this.GroupBox1.SuspendLayout();
this.SuspendLayout();
//
// GroupBox1
//
this.GroupBox1.Controls.AddRange(new System.Windows.Forms.Control[] {
this.picProduct});
this.GroupBox1.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.GroupBox1.Location = new System.Drawing.Point(12, 52);
this.GroupBox1.Name = "GroupBox1";
this.GroupBox1.Size = new System.Drawing.Size(352, 128);
this.GroupBox1.TabIndex = 22;
this.GroupBox1.TabStop = false;
this.GroupBox1.Text = "Display Value for ProductImage";
//
// picProduct
//
this.picProduct.Location = new System.Drawing.Point(16, 24);
this.picProduct.Name = "picProduct";
this.picProduct.Size = new System.Drawing.Size(128, 88);
this.picProduct.TabIndex = 18;
this.picProduct.TabStop = false;
//
// Label1
//
this.Label1.Location = new System.Drawing.Point(20, 20);
this.Label1.Name = "Label1";
this.Label1.Size = new System.Drawing.Size(64, 16);
this.Label1.TabIndex = 21;
this.Label1.Text = "Product:";
//
// lblStatus
//
this.lblStatus.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.lblStatus.Dock = System.Windows.Forms.DockStyle.Bottom;
this.lblStatus.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.lblStatus.ForeColor = System.Drawing.SystemColors.HotTrack;
this.lblStatus.Location = new System.Drawing.Point(0, 218);
this.lblStatus.Name = "lblStatus";
this.lblStatus.Size = new System.Drawing.Size(388, 24);
this.lblStatus.TabIndex = 20;
//
// cboModelName
//
this.cboModelName.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cboModelName.Location = new System.Drawing.Point(84, 16);
this.cboModelName.Name = "cboModelName";
this.cboModelName.Size = new System.Drawing.Size(248, 21);
this.cboModelName.TabIndex = 19;
//
// FormatAndParseImage
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 14);
this.ClientSize = new System.Drawing.Size(388, 242);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.GroupBox1,
this.Label1,
this.lblStatus,
this.cboModelName});
this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
this.Name = "FormatAndParseImage";
this.Text = "FormatAndParseImage";
this.Load += new System.EventHandler(this.FormatAndParseImage_Load);
this.GroupBox1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private void FormatAndParseImage_Load(object sender, System.EventArgs e)
{
DataSet dsStore = new DataSet();
dsStore.ReadXmlSchema(Application.StartupPath + "store.xsd");
dsStore.ReadXml(Application.StartupPath + "store.xml");
cboModelName.DataSource = dsStore.Tables["Products"];
cboModelName.DisplayMember = "ModelName";
Binding pictureBinding = new Binding("Image", dsStore.Tables["Products"],
"ProductImage");
pictureBinding.Format += new ConvertEventHandler(FileToImage);
pictureBinding.Parse += new ConvertEventHandler(ImageToFile);
picProduct.DataBindings.Add(pictureBinding);
}
private void FileToImage(object sender, ConvertEventArgs e)
{
if (e.DesiredType == typeof(Image))
{
// Store the filename.
picProduct.Tag = e.Value;
// Look up the corresponding file, and create an Image object.
e.Value = Image.FromFile(Application.StartupPath + "" + e.Value);
}
}
private void ImageToFile(object sender, ConvertEventArgs e)
{
if (e.DesiredType == typeof(string))
{
// Substitute the filename.
e.Value = picProduct.Tag;
}
}
[STAThread]
static void Main()
{
Application.Run(new FormatAndParseImage());
}
}
}
FormatAndParse.zip( 48 k)
Simple Form Validation
/*
User Interfaces in C#: Windows Forms and Custom Controls
by Matthew MacDonald
Publisher: Apress
ISBN: 1590590457
*/
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
namespace Validation
{
/// <summary>
/// Summary description for SimpleValidation.
/// </summary>
public class SimpleValidation : System.Windows.Forms.Form
{
internal System.Windows.Forms.GroupBox GroupBox1;
internal System.Windows.Forms.Label Label2;
internal System.Windows.Forms.Label Label1;
internal System.Windows.Forms.TextBox txtFirstName;
internal System.Windows.Forms.TextBox txtLastName;
internal System.Windows.Forms.Button Button1;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public SimpleValidation()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.GroupBox1 = new System.Windows.Forms.GroupBox();
this.Label2 = new System.Windows.Forms.Label();
this.Label1 = new System.Windows.Forms.Label();
this.txtFirstName = new System.Windows.Forms.TextBox();
this.txtLastName = new System.Windows.Forms.TextBox();
this.Button1 = new System.Windows.Forms.Button();
this.GroupBox1.SuspendLayout();
this.SuspendLayout();
//
// GroupBox1
//
this.GroupBox1.Controls.AddRange(new System.Windows.Forms.Control[] {
this.Label2,
this.Label1,
this.txtFirstName,
this.txtLastName});
this.GroupBox1.Location = new System.Drawing.Point(8, 12);
this.GroupBox1.Name = "GroupBox1";
this.GroupBox1.Size = new System.Drawing.Size(368, 88);
this.GroupBox1.TabIndex = 11;
this.GroupBox1.TabStop = false;
//
// Label2
//
this.Label2.Location = new System.Drawing.Point(16, 52);
this.Label2.Name = "Label2";
this.Label2.Size = new System.Drawing.Size(64, 16);
this.Label2.TabIndex = 8;
this.Label2.Text = "Last Name:";
//
// Label1
//
this.Label1.Location = new System.Drawing.Point(16, 28);
this.Label1.Name = "Label1";
this.Label1.Size = new System.Drawing.Size(64, 16);
this.Label1.TabIndex = 7;
this.Label1.Text = "First Name:";
//
// txtFirstName
//
this.txtFirstName.Location = new System.Drawing.Point(84, 24);
this.txtFirstName.Name = "txtFirstName";
this.txtFirstName.Size = new System.Drawing.Size(152, 21);
this.txtFirstName.TabIndex = 4;
this.txtFirstName.Text = "";
this.txtFirstName.Validating += new System.ComponentModel.CancelEventHandler(this.txtName_Validating);
//
// txtLastName
//
this.txtLastName.Location = new System.Drawing.Point(84, 48);
this.txtLastName.Name = "txtLastName";
this.txtLastName.Size = new System.Drawing.Size(152, 21);
this.txtLastName.TabIndex = 5;
this.txtLastName.Text = "";
this.txtLastName.Validating += new System.ComponentModel.CancelEventHandler(this.txtName_Validating);
//
// Button1
//
this.Button1.Location = new System.Drawing.Point(152, 208);
this.Button1.Name = "Button1";
this.Button1.Size = new System.Drawing.Size(76, 24);
this.Button1.TabIndex = 10;
this.Button1.Text = "OK";
this.Button1.Click += new System.EventHandler(this.Button1_Click);
//
// SimpleValidation
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 14);
this.ClientSize = new System.Drawing.Size(384, 242);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.GroupBox1,
this.Button1});
this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
this.Name = "SimpleValidation";
this.Text = "SimpleValidation";
this.GroupBox1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private void Button1_Click(object sender, System.EventArgs e)
{
this.Close();
}
[STAThread]
static void Main()
{
Application.Run(new SimpleValidation());
}
private void txtName_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
if (((TextBox)sender).Text == "")
{
MessageBox.Show("You must enter a first and last name.", "Invalid Input", MessageBoxButtons.OK, MessageBoxIcon.Warning);
e.Cancel = true;
}
}
}
}
Error Provider Validation
/*
User Interfaces in C#: Windows Forms and Custom Controls
by Matthew MacDonald
Publisher: Apress
ISBN: 1590590457
*/
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
namespace Validation
{
/// <summary>
/// Summary description for ErrorProviderValidation.
/// </summary>
public class ErrorProviderValidation : System.Windows.Forms.Form
{
internal System.Windows.Forms.Label Label3;
internal System.Windows.Forms.TextBox txtEmail;
internal System.Windows.Forms.Label Label2;
internal System.Windows.Forms.Label Label1;
internal System.Windows.Forms.TextBox txtFirstName;
internal System.Windows.Forms.TextBox txtLastName;
internal System.Windows.Forms.Button Button1;
internal System.Windows.Forms.ErrorProvider errProvider;
internal System.Windows.Forms.GroupBox grpValidation;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public ErrorProviderValidation()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
//
// TODO: Add any constructor code after InitializeComponent call
//
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.grpValidation = new System.Windows.Forms.GroupBox();
this.Label3 = new System.Windows.Forms.Label();
this.txtEmail = new System.Windows.Forms.TextBox();
this.Label2 = new System.Windows.Forms.Label();
this.Label1 = new System.Windows.Forms.Label();
this.txtFirstName = new System.Windows.Forms.TextBox();
this.txtLastName = new System.Windows.Forms.TextBox();
this.Button1 = new System.Windows.Forms.Button();
this.errProvider = new System.Windows.Forms.ErrorProvider();
this.grpValidation.SuspendLayout();
this.SuspendLayout();
//
// grpValidation
//
this.grpValidation.Controls.AddRange(new System.Windows.Forms.Control[] {
this.Label3,
this.txtEmail,
this.Label2,
this.Label1,
this.txtFirstName,
this.txtLastName});
this.grpValidation.Location = new System.Drawing.Point(8, 8);
this.grpValidation.Name = "grpValidation";
this.grpValidation.Size = new System.Drawing.Size(368, 124);
this.grpValidation.TabIndex = 13;
this.grpValidation.TabStop = false;
//
// Label3
//
this.Label3.Location = new System.Drawing.Point(16, 88);
this.Label3.Name = "Label3";
this.Label3.Size = new System.Drawing.Size(64, 16);
this.Label3.TabIndex = 10;
this.Label3.Text = "Email:";
//
// txtEmail
//
this.txtEmail.Location = new System.Drawing.Point(84, 84);
this.txtEmail.Name = "txtEmail";
this.txtEmail.Size = new System.Drawing.Size(152, 21);
this.txtEmail.TabIndex = 9;
this.txtEmail.Text = "";
this.txtEmail.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtEmail_KeyPress);
//
// Label2
//
this.Label2.Location = new System.Drawing.Point(16, 52);
this.Label2.Name = "Label2";
this.Label2.Size = new System.Drawing.Size(64, 16);
this.Label2.TabIndex = 8;
this.Label2.Text = "Last Name:";
//
// Label1
//
this.Label1.Location = new System.Drawing.Point(16, 28);
this.Label1.Name = "Label1";
this.Label1.Size = new System.Drawing.Size(64, 16);
this.Label1.TabIndex = 7;
this.Label1.Text = "First Name:";
//
// txtFirstName
//
this.txtFirstName.Location = new System.Drawing.Point(84, 24);
this.txtFirstName.Name = "txtFirstName";
this.txtFirstName.Size = new System.Drawing.Size(152, 21);
this.txtFirstName.TabIndex = 4;
this.txtFirstName.Text = "";
this.txtFirstName.Validating += new System.ComponentModel.CancelEventHandler(this.txtName_Validating);
//
// txtLastName
//
this.txtLastName.Location = new System.Drawing.Point(84, 48);
this.txtLastName.Name = "txtLastName";
this.txtLastName.Size = new System.Drawing.Size(152, 21);
this.txtLastName.TabIndex = 5;
this.txtLastName.Text = "";
this.txtLastName.Validating += new System.ComponentModel.CancelEventHandler(this.txtName_Validating);
//
// Button1
//
this.Button1.Location = new System.Drawing.Point(152, 204);
this.Button1.Name = "Button1";
this.Button1.Size = new System.Drawing.Size(76, 24);
this.Button1.TabIndex = 12;
this.Button1.Text = "OK";
this.Button1.Click += new System.EventHandler(this.Button1_Click);
//
// errProvider
//
this.errProvider.DataMember = null;
//
// ErrorProviderValidation
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 14);
this.ClientSize = new System.Drawing.Size(388, 242);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.grpValidation,
this.Button1});
this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
this.Name = "ErrorProviderValidation";
this.Text = "ErrorProviderValidation";
this.grpValidation.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
[STAThread]
static void Main()
{
Application.Run(new ErrorProviderValidation());
}
private void Button1_Click(object sender, System.EventArgs e)
{
bool invalidInput = false;
foreach (Control ctrl in this.grpValidation.Controls)
{
if (errProvider.GetError(ctrl) != "")
{
invalidInput = true;
break;
}
}
if (invalidInput)
{
MessageBox.Show("You still have invalid input.", "Invalid Input", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
this.Close();
}
}
private void txtName_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
Control ctrl = (Control)sender;
if (ctrl.Text == "")
{
errProvider.SetError(ctrl, "You must enter a first and last name.");
}
else
{
errProvider.SetError(ctrl, "");
}
}
private void txtEmail_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
System.Text.RegularExpressions.Regex regex;
regex = new System.Text.RegularExpressions.Regex(@"S+@S+.S+");
Control ctrl = (Control)sender;
if (regex.IsMatch(ctrl.Text))
{
errProvider.SetError(ctrl, "");
}
else
{
errProvider.SetError(ctrl, "Not a valid email.");
}
}
}
}