مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

آموزش سی شارپ قسمت 37 : کنترل textbox های خالی


در برنامه جدول زمانی مشکلی در textbox ها وجود دارد. اگر در textbox ها چیزی تایپ نکنید برنامه با خطا مواجه می شود. امتحان کنید. برنامه را اجرا کنید و textbox ها را خالی بگذارید. بر روی دکمه کلیک کنید. یک پیغام خطای نامفهوم خواهید دید.

Exception error in Visual Studio 2017

#C خطوط مهم پیغام را ب هایلات زرد نشان میدهد. این پیغام به این علت نشان داده میشود که #C نمیتواند اعداد را از textbox ها بگیرد و آنها را تبدیل و در متغیرها ذخیره نماید. به هر حال نمی توانید از #C انتظار داشته باشید چیزی را که وجود ندارد تبدیل کند. برای حل این مشکل از روشی به نام TryParse استفاده می کنیم.

برای تبدیل اعداد داخل textbox ها به integer از روش زیر استفاده می کردیم:

loopStart = int.Parse(textBox1.Text);

با این روش ابتدا عدد داخل textbox تجزیه می شود و سپس به int تبدیل می شود. حال اگر به جای عدد یک حرف یا متن مثلا three در داخل textbox تایپ شود استفاده از این روش عملی نیست. چیزی که ما احتیاج داریم روش Try و Parse یعنی امتحان و سپس تبدیل محتوای داخل textbox است. یعنی ابتدا از #C میپرسیم که میتواند محتوای داخل textbox را به عدد تبدیل کند یا نه. اگر این امر امکان پذیر نباشد پیغام خطایی به کاربر نشان داده می شود. در زیر کدی میبینیم که سعی دارد محتوای داخل textbox را تبدیل کند. در ابتدای امر کد کمی پیچیده به نظر می رسد ولی آن را یاد خواهیم گرفت.

TryParse in C#

دو خط اول دو متغیر تعریف می کنند. یک integer و یک boolean. متغیر outputValue در TryParse استفاده می شود. در اینجا خروجی ما یک متغیر boolean که میتواند true یا fales باشد و همچنین یک متغیر متنی از نوع string است:

isNumber = int.TryParse(textBox1.Text, out outputValue);

بنابراین بسته به اینکه #C بتواند محتوای داخل txtbox را به integer تبدیل کند یا نه مقدار متغیر isNumber برابر true یا fales خواهد بود. اگر بجای متغیر boolean میخواستیم از یک متغیر double استفاده و آن را تجزیه کنیم کد ما بصورت زیر می شد:

double outputValue = 0;
bool isNumber = false;

isNumber = double.TryParse(textBox1.Text, out outputValue);

در این حالت خروجی ما باید از نوع double باشد. یعنی #C کنتر میکند که آیا میتواند محتوای textbox ها را به double تبدیل کند یا نه. متغیر isNumber همچنان برابر true یا fales خواهد بود به این معنی که قابل تبدیل هست یا نه.
بعد از استفاده از TryParse کنترل می کنیم که مقدار آن true است یا fales.

 

if (!isNumber)
{

MessageBox.Show("Type numbers in the text boxes");

}
else
{

شرح کد بصورت زیر است:

}

اگر دستورات شرطی را به یاد داشته باشید معنی کد زیر را خواهید فهمید:

if (!isNumber)

این را بخوان:

If NOT true

اگر بخواهید میتونید کد را بصورت زیر بنویسید:

if (isNumber == false)

حال معنی کد بصورت زیر خواهد بود:

"اگر متغیر isNumber مقداری برابر false داشته باشد"

اگر مقدار isNumber برابر false باشد پیغام خطایی به کاربر نشان میدهیم. اما اگر مقدار آن true باشد به این معنی است که محتوای داخل textbox را میتوانیم تبدیل نماییم.

در این حالت کد داخل براکتها { } اجرا خواهد شد.

اگر مطالب بالا برای شما کمی پیچیده بود نگران نباشید. این مشکل را حل خواهید کرد. در بخش بعدی با روشی آسانتر از کار با حلقه ها و دستورات شرطی آشنا خواهیم شد که بوسیله آن میتوانید به برنامه خود منو اضافه کنید.

برای هر کسی که برنامه نویسی را شروع میکند، حلقه ها و دستورات شرطی بزرگترین مانعی هستند که باید آنها را به خوبی یاد بگیرد . با مهارت در این دو موضوع دشوار و سخت ادامه راه برای تبدیل شدن به یک برنامه نویس هموار خواهد شد!

 

 

فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

آموزش ارسال پیامک، آموزش ارسال پیامک تکی و گروهی ، ارسال پیامک به صورت اختصاصی برای هر مشترک، دریافت پیامک، مشاهده وضعیت…

توضیحات کلی مجموعه:   آیا می دونید قیمت نرم افزارهای مدیریت پیامک در حدود 150 هزار تومان است؟ اما توسط این دوره شما میتونید با مبلغ بسیار کمتر یک نرم افزار مدیریت پیامک رو به صورت کاملا حر…
فصلِ: 9 , تعداد قسمت ها: 59 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

در این فصل که فصل پایانی این دوره می باشد در مورد نحوه ساختن فایل نصبی سریع یا همان quick installer که روش پیشنهاد شده م…

توضیحات کلی مجموعه: پس از بازخوردهای بسیار خوبی که از دوره های آموزش برنامه نویسی سیستم اتوماسیون اداری و آموزش برنامه نویسی سیستم فروش و انبارداری مشاهده کردیم، تصمیم گرفتیم با توجه به درخ…
فصلِ: 13 , تعداد قسمت ها: 120 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

در این فصل که فصل آخر از مجموعه بزرگ آموزش سیستم اتوماسیون اداری می باشد در ابتدا در مورد اسناد و نامه های خارج از سازما…

دوره صفر تا صد  آموزش برنامه نویسی و پیاده سازی سیستم اتوماسیون اداری تحت شبکه. (توصیه می شود دومی مجموعه را حتما ببینید) امروزه اطلاعات یکی از مهمترین و با ارزشترین منابع هر اداره و یا ساز…
فصلِ: 4 , تعداد قسمت ها: 14 , سطح: مقدماتی

این فصل در یک نگاه:

توضیح تنظیمات گرافیک و صدا در یونیتی پیاده سازی منو ها …

به نام خدا   بازی‌سازی یک حرفه بسیار جذاب است و تبدیل شدن به یک بازی‌ساز حرفه‌ای آرزوی همه ماست. اینکه بتوانیم دنیای خاصی خلق کنیم و در این دنیا قوانین خود را پیاده کنیم، همیشه ما را به وج…
فصلِ: 11 , تعداد قسمت ها: 92 , سطح: صفر تا صد

این فصل در یک نگاه:

اجرای سیستم روی سیستم، قرار دادن سیستم روی سرور، تعریف Connetion String، آشنایی با فایل App.config، ساخت رشته اتصال به ص…

مهمترین تکنولوژیهای استفاده شده در این دوره پروژه محور (سیستم فروش کالا و انبارداری) طراحی گرافیکی به روش WPF (Windows Presentaion Foundation) آموزش کامل برنامه نویسی xaml (برای طراحی های …
فصلِ: 5 , تعداد قسمت ها: 25 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل پنجم…

توضیحات کلی مجموعه: درباره گیت: لذت پیش بردن پروژه های برنامه نویسی خود را با بهترین ورژن کنترل سیستم جهان تجربه کنید کامل ترین دوره ی آموزشی گیت و گیت هاب به همراه مثال های کاربردی گی…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید