C# Check Numeric เช็คค่า ให้กรอกได้เฉพาะตัวเลข ใน Textbox (C#.NET WinApp)
Code (C#)
// คีย์ได้เฉพาะตัวเลข ,backspace,(.) ,และเครื่องหมาย (-)
public static bool CheckKeycode(TextBox targettextbox, char CurrentChar)
{
if ((int)CurrentChar >= 45 && (int)CurrentChar <= 57 && (int)CurrentChar != 8 && (int)CurrentChar != 47)
{
return false;
}
if (Convert.ToString (CurrentChar )== "." && targettextbox .Text .IndexOf (".") == -1)
{
return false;
}
if (CurrentChar == Convert .ToChar (Keys.Back ))
{
return false;
}
return true;
}
Date :
2010-05-27 16:12:54
By :
tee
Code (C#)
private void txtBox1_KeyPress(object sender, KeyPressEventArgs e)
{
int cInt = Convert.ToInt32(e.KeyChar);
if ((int)e.KeyChar >= 48 && (int)e.KeyChar <= 57 || cInt == 8)
{
e.Handled = false;
}
else
{
e.Handled = true;
}
}
Date :
2010-05-27 20:51:02
By :
msorawich
ไม่ได้สักอันเลย
Date :
2010-07-06 11:27:45
By :
thaic
Code (C#)
private void txtBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if((e.KeyChar < Convert.ToChar(47) | e.KeyChar(58)) && e.KeyChar != Convert.ToChar(8))
{
e.Handled = true;
}
}
Date :
2010-07-06 13:17:03
By :
Programmer ด้อยปัญญา สำนัก ทองเสียง
อันใหม่ก็ Error T_T
Date :
2010-07-06 15:03:07
By :
thaic
error ว่าไรก็โพสมาดิวุ้ย ให้เดาแบบนี้ใครจะทำให้ถูก @#!$$#!@$
Date :
2010-07-06 16:20:22
By :
tungman
ลืมไป ครับ ขอประทานอภัย
Error 1 Non-invocable member 'System.Windows.Forms.KeyPressEventArgs.KeyChar' cannot be used like a method.
Date :
2010-07-06 16:24:31
By :
thaic
Date :
2010-07-07 09:59:17
By :
thaic
อย่ามัวรอ code หล่นลงมาจากฟ้าค่ะ
code บางอันที่หล่นมาบางอันจะแรง ทับอวัยวะบวมเอาได้
หาทางเองคู่กันไปด้วยค่ะ
น้ำใจอะมีค่ะแต่อยากให้ยืนด้วยลำ code ของตัวเองนะคะ
Date :
2010-07-07 11:01:27
By :
blurEyes
เออ มันก็จริงครับแต่ว่ามันเหนือความสามารถ จริงๆ เป็น PHP ยังพอว่า
Date :
2010-07-07 11:52:04
By :
thaic
Code (C#)
private void textBox2_TextChanged_1(object sender, EventArgs e)
{
try
{
if (textBox2.Text == "")
{
}
else
{
string bb2 = textBox2.Text;
int all = int.Parse(bb2);
if (all > 34)
{
label3.Visible = true;
}
else
{
label3.Visible = false;
}
}
}
catch
{
textBox2.Text = "";
return;
}
}
เล่นเอาเหนื่อยเลย คิดได้แต่ Code สไตล์ ไทบ้านๆ พอใช้ได้
ส่วนพวก
Code (C#)
private void textBox2_keypress(object sender, EventArgs e)
private void textBox2_keyup(object sender, EventArgs e)
private void textBox2_keydown(object sender, EventArgs e)
ใช้ไม่ได้สักอัน(เพราะใช้ไม่เป็นไม่มีคนแนะนำไม่รู้จะห่วงความรู้ไว้ทำไม )
ขนาดเว็บมันเองยังอธิบายยกตัวอย่างทำตามยังไม่ได้ผลเลย - -* เศร้าใจ
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keydown.aspx
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keyup.aspx
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keypress.aspx
Date :
2010-07-07 14:47:55
By :
thaic
ลืมกลับมาขอบคุณ ขอบคุณทุกๆท่าน ผมใช้โค๊ดของคุณ Pae ได้ผล ^^
Date :
2010-07-19 10:50:27
By :
hamutaru
Code (C#)
private void textBox2_keypress(object sender, EventArgs e)
private void textBox2_keyup(object sender, EventArgs e)
private void textBox2_keydown(object sender, EventArgs e)
พวกนี้นะครับ ใช่ได้นะครับคุณก็เข้าไปเอาที่Event ของ textBox2 ซิครับ
ขั้นตอนแรกคุณไปที่หน้าDesign คลิ๊กที่ textBox2 แล้วไปที่PropertyของTextBox2 เลือกEventรูปสายฟ้านั้นล่ะครับแล้วก็
ไปที่เลือกเอามาเลยว่าจะใช้Eventอะไร
ไม่ใช่ว่าให้คุณCopy ไปวางเฉยๆ Copyแล้ววางทั้งชาติมันก็Error แบบที่คุณเจอสิครับ และก้ไม่ได้ด้วยครับคุณ thaic
Date :
2011-03-16 22:07:04
By :
ืช้าไปหน่อย
Code (VB.NET)
Private Sub Txt_P_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_P.KeyPress
If Asc(e.KeyChar) = 13 Then
If (Txt_P.Text = "") Then
Txt_P.Focus()
Else
Txt_R.Focus()
End If
End If
Select Case Asc(e.KeyChar) ' คีย์ได้แค่ตัวเลขเท่านั้น
Case 48 To 57
Case Keys.Back
Case Else
e.Handled = True
End Select
End Sub
Date :
2011-03-30 13:36:40
By :
kik
ขอบคุณ vbcrazy ครับ แร่มมากมาย
Date :
2011-04-17 23:38:51
By :
sodamax
ขอบคุณมากครับๆๆๆๆๆๆๆๆๆ
กระจ่างมาก
Date :
2011-06-29 20:48:13
By :
วิทคอมมือใหม่
Code (C#)
private void txt1_keypress(object sender, KeypressEventArge e)
{
char ch1 = e.KeyChar;
if (! char.IsDigit(ch1) && ch1 ! = 8)
{
e.Handle = true;
}
}
Date :
2011-07-06 10:17:03
By :
วรรณ CPE
Code (C#)
private void txtInput_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsDigit(e.KeyChar) || char.IsControl(e.KeyChar)))
e.Handled = true;
}
Date :
2011-07-06 11:33:48
By :
nooknoname
Code (C#)
private void textBox3_KeyPress(object sender, KeyPressEventArgs e)
{
if (System.Char.IsNumber(e.KeyChar) == false && e.KeyChar != 8)
e.Handled = true;
}
Date :
2011-07-06 11:40:56
By :
nooknoname
Code (C#)
ไม่มี Keypress จิงๆ นะ
Date :
2011-11-25 17:35:31
By :
Help me
มีนะครับตรงหัวข้อ Key นะครับ คลิกตรง TextBox ก่อนแล้วคลิก Event รูปสายฟ้า หาคำว่า Key แล้วเลือก Keypress กดตรงแถบขวาสุดว่างๆจะมีลูกศรชี้ลงแล้วคลิ๊กตรงว่างๆน่ะครับมันจะสร้างขึ้นมาให้เองแล้วเราก็ก๊อปปี้ Code ไปใส่ข้างในครับรับรองใช้ได้ 100 %
อันนี้เป็นการเช็คเลขทศนิยมครับ ^^
Code (C#)
private void KeyPressHandle(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar)
&& !char.IsDigit(e.KeyChar)
&& e.KeyChar != '.')
{
e.Handled = true;
}
// only allow one decimal point
if (e.KeyChar == '.'
&& (sender as TextBox).Text.IndexOf('.') > -1)
{
e.Handled = true;
}
}
Date :
2012-06-02 10:35:56
By :
นักสร้าง
ที่มาครับ : http://www.codetoday.net/default.aspx?g=posts&m=8548
Date :
2012-06-02 10:37:37
By :
นักสร้าง
คุณไม่ได้ใช้ Code behind หรือป่าว เลยไม่มี
Date :
2012-06-03 18:54:21
By :
thealmostzz
Code (C#)
{
if (IsNumeric(TextBox1.Text) == false) {
MsgBox("ส่วนลดกรุณากรอกเป็นตัวเลขเท่านั้น");
}
else {
MsgBox("OK");
}
}
ประวัติการแก้ไข 2012-06-03 19:51:52 2012-06-03 19:52:25
Date :
2012-06-03 19:51:32
By :
billkyz5
ตอบช้าไปหน่อยแบบนี้เป็นแบบของผมนะครับ
อันจะไม่มีเริ่มจาก 0
Code (C#)
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Enter && textBox1.Text.Trim() != "")
{
textBox2.Focus();
}
else if ((e.KeyChar <= '0' || e.KeyChar > '9') && (e.KeyChar != '\b') && textBox1.Text.Length == 0)
{
e.Handled = true;
return;
}
else if ((e.KeyChar < '0' || e.KeyChar > '9') && (e.KeyChar != '\b'))
{
e.Handled = true;
return;
}
}
Date :
2012-06-05 15:02:50
By :
kkcc
ขอบคคณครับ
ผมลอง ใช้โค้ด ของ คุณ tee และ คุณ vbcrazy มาดัดแปลง นิดหน่อย
ใช้ได้ดีเลยครับ
ขอบคุณนะครับ
ที่ช่วยแชร์ควารู้ให้คนอื่นๆ
Date :
2012-09-02 02:41:28
By :
pear
ขอบคุณ คุณ msorawich มากๆครับใช้ได้เลยครับแต่ก็อยากได้คอมเม้นของแต่ละบรรทัดเหมือนกันเพราะงงๆเกี่ยวกับ ฟังชั่นแต่พอรู้เรื่อง if else เพราะเลขนั้นน่าจะประมาณเป็นรหัสแป้นพิมพ์ หรือเปล่า 5555
แต่ยังไงก็ขอบคุณครับ
Date :
2012-11-24 20:07:59
By :
kang
สงสาร เพื่อคนอื่นมา search ดู ง่ายๆ เลยวิธีเช็ค ใช้ tryparse
คำสั่งนี้จะ return ค่าออกมาสองตัวคือแปลงได้หรือไม่ได้ และค่าหลังจากแปลงแล้วก็เอาไปเช็คเอา
int ans;
result = int.tryparse(textbox1.text, out ans);
if( result == false)
{
MessageBox.Show("กรอกตัวเลขดิแสดดดด");
}
Date :
2013-07-13 00:13:30
By :
morleng
private void spt01_txtNoDate_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsDigit(e.KeyChar) || char.IsControl(e.KeyChar) || e.KeyChar == '.' || e.KeyChar == ',')) e.Handled = true;
}
Date :
2014-03-29 11:42:41
By :
skyImagine
public bool ValidateNumber(int CurrentChar)
{
switch (CurrentChar)
{
case 8://--------- "BackSpace"
case 46://--------- "."
case 48://--------- "0"
case 49://--------- "1"
case 50://--------- "2"
case 51://--------- "3"
case 52://--------- "4"
case 53://--------- "5"
case 54://--------- "6"
case 55://--------- "7"
case 56://--------- "8"
case 57://--------- "9"
return false;
default:
return true;
}
}
และ ใน
private void txtNewEditQty_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = ValidateNumber(e.KeyChar);
}
Date :
2014-08-25 12:10:40
By :
ืnik
Code ของคุณ tee เวลาจะเอาไปใช้งานต้องทำยังไงบ้างครับ
head]Code (C#)[/head]
if (CheckKeycode(txtPhone))
{
MessageBox.Show("กรุณาใส่แต่ตัวเลข", "คำเตือน", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
))
ลองใส่อย่างงี้แล้วขึ้น error อ่ะครับ
Error 1 No overload for method 'CheckKeycode' takes 1 arguments C:\Users\Aeqosplus\Documents\Visual Studio 2010\Projects\Bus\Bus\FAddMember.cs 149 73 Bus
Date :
2014-12-15 13:04:21
By :
เด็กใหม่ c#
Add Toolbox : ToolTip
Code (C#)
private void Alert(string Msg, TextBox txt)
{
toolTip1.Show(string.Empty, txt, 0);
toolTip1.ToolTipTitle = Msg;
toolTip1.Show("0-9", txt, txt.Height, 25, 2000);
txt.Focus();
}
private void txtTel_KeyPress(object sender, KeyPressEventArgs e)
{
int cInt = Convert.ToInt32(e.KeyChar);
if (e.KeyChar < 47 || e.KeyChar > 57)
{
Alert("ใส่ได้เฉพาค่าตัวเลขเท่านั้น", txtTel);
e.Handled = true;
}
if (e.KeyChar == 8 || e.KeyChar == 46)
e.Handled = false;
}
Date :
2015-07-03 11:55:33
By :
โปรแกรมเมอร์กากๆ
2010-05-27 16:00:09
ถึง
2015-07-03 11:55:33
คนบางคนก็พูดว่า (น้ำท่วม)
ฟ้าฝนอุดมสมบูรณ์ ในน้ำมีปลา ในนามีข้าว
คนบางคนก็พูดว่า (ฝนแล้ง)
เมืองอีสวน กำลังเดือดร้อน มันเป็นย่อนเจ้าข้านายมัน
Date :
2015-07-05 21:38:08
By :
หน้าฮี
Load balance : Server 03