Csharp/C Sharp by API/System.Windows.Forms/KeyPressEventArgs — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Текущая версия на 12:09, 26 мая 2010
KeyPressEventArgs.Handled
using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class TextCancelEventKeyEvent : System.Windows.Forms.Form
{
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox txtInput;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label lblTrue;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label lblCheck;
private System.Windows.Forms.Label lblResults;
public TextCancelEventKeyEvent()
{
InitializeComponent();
}
private void InitializeComponent()
{
this.label1 = new System.Windows.Forms.Label();
this.txtInput = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.lblTrue = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.lblCheck = new System.Windows.Forms.Label();
this.lblResults = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// label1
//
this.label1.Font = new System.Drawing.Font("Tahoma", 14.25F, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic), System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
this.label1.Location = new System.Drawing.Point(48, 16);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(176, 23);
this.label1.TabIndex = 0;
this.label1.Text = "ISBN Validation";
//
// txtInput
//
this.txtInput.Location = new System.Drawing.Point(72, 64);
this.txtInput.Name = "txtInput";
this.txtInput.TabIndex = 1;
this.txtInput.Text = "";
this.txtInput.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtInput_KeyPress);
this.txtInput.Validating += new System.ruponentModel.CancelEventHandler(this.handleCancleEvent);
//
// label2
//
this.label2.Location = new System.Drawing.Point(24, 104);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(80, 23);
this.label2.TabIndex = 2;
this.label2.Text = "True Number:";
//
// lblTrue
//
this.lblTrue.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.lblTrue.Location = new System.Drawing.Point(112, 104);
this.lblTrue.Name = "lblTrue";
this.lblTrue.TabIndex = 3;
//
// label3
//
this.label3.Location = new System.Drawing.Point(32, 152);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(72, 23);
this.label3.TabIndex = 4;
this.label3.Text = "Check Digit:";
//
// lblCheck
//
this.lblCheck.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.lblCheck.Location = new System.Drawing.Point(112, 152);
this.lblCheck.Name = "lblCheck";
this.lblCheck.TabIndex = 5;
//
// lblResults
//
this.lblResults.Location = new System.Drawing.Point(56, 192);
this.lblResults.Name = "lblResults";
this.lblResults.Size = new System.Drawing.Size(152, 24);
this.lblResults.TabIndex = 8;
//
// TextCancelEventKeyEvent
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(264, 293);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.lblResults,
this.lblCheck,
this.label3,
this.lblTrue,
this.label2,
this.txtInput,
this.label1});
this.ResumeLayout(false);
}
[STAThread]
static void Main()
{
Application.Run(new TextCancelEventKeyEvent());
}
private void handleCancleEvent(object sender, System.ruponentModel.CancelEventArgs e)
{
TextBox tb = (TextBox)sender;
string strInput = tb.Text;
Console.WriteLine(strInput);
}
private void txtInput_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
char keyChar;
keyChar = e.KeyChar;
if(!Char.IsDigit(keyChar) // 0 - 9
&&
keyChar != 8 // backspace
&&
keyChar != 13 // enter
&&
keyChar != "x"
&&
keyChar != 45 // dash/minus
){
// Do not display the keystroke
e.Handled = true;
}
}
}