View Full Version : مقایسه با یک نوع داده
darksunrise
یک شنبه 10 خرداد 1388, 12:24 عصر
چطور میشه داخل یه شرطی مثل if چک کرد مقدار یک متغیر intهست یا نه؟
Unknownlive
یک شنبه 10 خرداد 1388, 12:33 عصر
مثلا اگر نام متغیر a باشد :
a.gettype
کد زیر مقدار System.int32 را بر می گرداند :
int a=2;
MessageBox.Show(a.GetType().ToString());
حالا شرط:
if(a.getType.tostring()=="System.int32"
darksunrise
یک شنبه 10 خرداد 1388, 12:58 عصر
حالا اگه بخوام مقدار داخل تکست باکس رو چک کنم و مطمئن بشم که فقط عدد وارد شده چی؟
اگه از gettype استفاده کنم که همش میگه استرینگ وارد شده
SMRAH1
یک شنبه 10 خرداد 1388, 13:17 عصر
سلام
برای اطمینان از نوع می تونی از is هم استفاده کنی یعنی:
int i = 0;
float j = 0;
if (i is int)
MessageBox.Show("yes");
else
MessageBox.Show("No");
if (j is int)
MessageBox.Show("yes");
else
MessageBox.Show("No");2) برای اینکه در یک textBox، مطمئن باشی که یک عدد وارد شده می تونی از کد های مثل کد زیر (برای اعداد صحیح مثبت) استفاده کنی:
if(textBox1.Text.Trim('0','1','2','3','4','5','6', '7','8','9') == "")
MessageBox.Show("Is Numbet");
else
MessageBox.Show("Is Not Number");که برای دیگر حالات (اعداد منفی و ..) باید کمی ذوق به خرج بدی و کد رو به شکل مناسب تغییر بدی.
3) اگر فقط می خواهی عدد دریافت بشه ،توی «نمونه برنامه های کاربری» یک نمونه TextBox برای اعداد (البته با نمایش مناسب اعداد - مثلا سه رقم سه رقم جدا کند و ..) دیدم که حتما می تونید با جستجو پیدا کنید.
موفق باشید
adinochestva
یک شنبه 10 خرداد 1388, 13:23 عصر
Char.IsDigit() به همين منظور استفاده مي شود
darksunrise
یک شنبه 10 خرداد 1388, 13:53 عصر
Char.IsDigit() به همين منظور استفاده مي شود
میشه بیشتر توضیح بدید ؟
چه جوری ازش استفاده کنم؟
adinochestva
یک شنبه 10 خرداد 1388, 15:11 عصر
اينجوري :
if (textBox1.Text.ToCharArray().All(x => char.IsDigit(x)))
MessageBox.Show("the value in textbox1 is digit only ! lol !");
NewFoxStudent
یک شنبه 10 خرداد 1388, 18:11 عصر
فکر کنم این ساده ترین راه باشه
برای تمام انواع میتونی استفاده کنی
if(int.Parse(textBox1.Text))
decimal.Parse(value);
DateTime.Parse(value)
adinochestva
یک شنبه 10 خرداد 1388, 18:15 عصر
فکر کنم این ساده ترین راه باشه
برای تمام انواع میتونی استفاده کنی
if(int.Parse(textBox1.Text))
decimal.Parse(value);
DateTime.Parse(value)
int.TryParse برادر !
NewFoxStudent
یک شنبه 10 خرداد 1388, 18:23 عصر
بله بله درسته
اشتباهی شد
:لبخندساده::خجالت::بوس:
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.