در ادامه آموزش سی شارپ و در بخش سوم به آموزش فراخوانی تابع در C# شارپ پرداخته شده است که در ادامه به صورت کامل توضیح داده شده است.
فراخوانی تابع
به منظور فراخوانی تابع در C# ابتدا form1 را در پنجره solution explorer دبل کلیک کرده و یک کنترلر label و دو کنترلر textbox و یک کنترلر button از پنجره toolbox اضافه می کنیم.
هر کنترلر، یکسری خصوصیات دارد که در پنجره properties قرار دارند. در ادامه خصوصیات مهم چهار کنترلر استفاده شده، بیان می شود. هرکدام از کنترلرها را که انتخاب کنیم می توانیم خصوصیات آنرا پنجره properties تغییر دهیم.
Label: این کنترلر شامل متنی است که در صفحه نمایش داده می شود. برای نوشتن متن مورد نظر، در پنجره properties، خصوصیت Text آنرا تغییر می دهیم. برای نوشتن متن فارسی یا متن فارسی و انگلیسی باید خصوصیت RightToleft آنرا برابر Yes قرار دهیم تا متن، بهم ریخته نشود.
Textbox: این کنترلر برای وارد کردن مقدار یا کاراکتر توسط کاربر است. در کد نویسی با نام (name) کنترلرها سروکار داریم. برای نامگذاری دو نکته مهم است:۱٫ فارسی نباشد. ۲٫ هدفمند باشد به اینصورت که قسمت اول نام مخفف نوع کنترلر و قسمت دوم مشخص کننده نام کنترلر باشد مثلا برای کنترلرهای textbox مربوط به رشته جستجو txtstr1 و برای textbox مربوط به عبارت جستجو شده txtstr2 قرار می دهیم.
Botton: کنترلی است که با کلیک بروی آن عملی انجام می شود. یک کنترلر botton به فرم اضافه کرده و خصوصیت name آنرا به btnsearch و خصوصیت text آنرا به جستحو تغییر می دهیم.
می خواهیم وقتی روی دکمه جستجو کلیک کردیم تابع findchar که قبلا تعریف کردیم فراخوانی شود. یعنی در event کلیک btnsearch تابع findchar فراخوانی شود. به این منظور می توانیم روی دکمه جستجو دوبار کلیک کنیم و یا اینکه در قسمت properties مربوط به دکمه جستجو، علامت ساعقه را کلیک کنیم تا event های مربوط به button نشان داده شود و سپس روبروی event مربوط به click دوبار کلیک کنیم.
نکته مهم :
ما دو کلاس داریم که فرم مربوط به کلاس form1 است و کلیک btnsearch در آن قرار دارد و یک کلاس lib که تابع findchar در آن تعریف شده است. برای فراخوانی یک تابع در یک کلاس در کلاس دیگر باید علاوه بر اینکه تابع را public تعریف می کنیم، همچنین سراسری هم تعریف شود به این منظور از کلمه static در تعریف تابع در کلاس lib استفاده می کنیم. در غیر اینصورت قادر به فراخوانی کلاس lib در کلاس form1 نیستیم.
public static int findchar(string s, string str)
برای فراخوانی تابع findchar در کلاس form1 به اینصورت عمل می کنیم:
برای فراخوانی تابع بصورت زیر عمل می کنیم:
(ورودی ها)نام تابع . نام کلاس. Namespace = نام متغیر نوع متغیر
Messagebox: پیغامی را به کاربر نشان می دهد و این پیغام از نوع string(رشته) است.
()ToString: عدد را به رشته تبدیل می کند. علت استفاده اینست که messagebox باید رشته باشد.
پایان قسمت سوم آموزش سی شارپ – فراخوانی تابع