تبلیغات
banner
banner
banner
تبلیغات
banner

فیلم های آموزشی : 36 +

تعداد کاربران : 44 +

تعداد کل مطالب : 338 +

تعداد نظرات : 33 +

حضرت علی (ع) : دانش اندک همراه با عمل بهتر از علم بسیار بدون عمل است.

آموزش مقدماتی تا پیشرفته سی شارپ بخش دویست و سی و هفتم


ای نام تو بهترین سرآغاز
بی نام تو نامه کِی کنم باز.

سلام به همه لندلرنی های عزیز.
درخدمتتون هستیم با

آموزش مقدماتی تا پیشرفته سی شارپ بخش دویست و سی و هفتم


امتحان كنيد: اضافه كردن قابليت مرتب سازي به برنامه

  • به قسمت طراحي فرم مربوط به Form1 برويد و روي دكمه ي Perform Sort دو بار كليك كنيد تـا متـد مربوط به رويداد Click اين كنترل ايجاد شود.
  • سپس كد مشخص شده در زير را به اين متد اضافه كنيد:
برنامه را اجرا كنيد تا قابليتي را كه در اين قسمت به برنامه اضافه كـرديم را امتحـان كنـيم.

در كنتـرل ComboBox موجود در فرم يك ستون را انتخاب كرده و سپس روي دكمه ي Sort Perform كليـك كنيـد تـا داده هـا بـر
اساس آن ستون مرتب شوند.

چگونه كار مي كند؟

اولين كاري كه در اين قسمت انجام مي دهيم اين است كه با توجه به مقدار انتخاب شده در كنترل cboField مشخص كنيم
داده ها بايد بر اساس كدام ستون مرتب شوند.

در اينجــا بــا اســتفاده از دســتور switch مــي تــوانيم حالتهــاي مختلــف مقــدار خاصــيت SelectedIndex از ComboBox را بررسي كرده و به اين وسيله مشخص كنيم كه كاربر مي خواهد داده ها را بر اساس چه ستوني مرتب كند.

بعد از مشخص شدن نام ستون مورد نظر مي توانيم خاصيت Sort را برابر با نام آن ستون قرار دهيم تا داده ها مرتب شوند.

بعد از مرتب شدن داده ها بهتر است كه به اولين ركورد داده ها برويم.

براي اين كار چندين روش وجود دارد.

روش اول اين است كه خاصيت Position را برابر با صفر قرار داده و سپس متد ShowPosition را فراخواني كنيم، در واقع همان كـاري را انجام دهيم كه در متد btnMoveFirst_Click انجام داده ايم.

پس به جاي استفاده از اين روش بهتر است كـه متـد btnMoveFirst_Click را فراخواني كرده و به جاي پارامترهاي آن مقدار null را ارسال كنـيم.

انجـام ايـن كـار دقيقاً مشابه اين است كه كاربر روي دكمه ي btnMoveFirst كليك كرده باشد.

متــد btnMoveFirst_Click دو پــارامتر دريافــت مــي كنــد، يكــي از نــوع object و ديگــري از نــوع EventArgs. هنگام فراخواني متد بايد اين دو پارامتر را به آن ارسال كنيم.

براي اين كار مـي تـوانيم دو شـيئ، يكـي از نـوع EventArgs و ديگـري از نـوع Object ايجـاد كـرده و آنهـا را بـه متـد ارسـال كنـيم.

امـا همـانطور كـه در كـد متـد btnMoveFirst مشاهده مي كنيد از اين دو پارامتر هيچ استفاده اي نكرده ايم، بنابراين لزومي ندارد كه مقداري حافظـه را اختصاص دهيم تا دو شيئ ايجاد كرده و آنها را به متد بفرستيم.

بلكه مي توانيم به جاي اين دو شيئ، دو مقـدار null را بـه متـد ارسال كنيم.

البته لازم است به اين نكته دقت كنيد كه استفاده از اين روش هنگامي كه از اين پارامتر ها در متد استفاده شـده باشـد، باعث ايجاد خطايي از نوع System.NullReferenceException مي شود.

بعد از اينكه به ركورد اول رفتيم لازم است كه متن ي را در نوار وضعيت نمايش دهيم تا مشخص شود كه داده ها مرتب شده اند.

براي اين كار از خاصيت Text در كنترل toolStripStatusLabel1 استفاده مي كنيم.

در بخش امتحان كنيد بعد، قابليت جستجو كردن را نيز به برنامه اضافه خواهيم كرد.

امتحان كنيد: اضافه كردن قابليت جستجو به برنامه

  • به قسمت طراحي فرم برويد و روي دكمه ي Search Perform دو بار كليك كنيد
  • تا متد مربـوط بـه رويـداد Click آن ايجاد شود.
  • سپس كد مشخص شده در زير را در اين متد وارد كنيد:
برنامه را اجرا كنيد تا قابليت جديد آن را نيز امتحان كنيم.

فيلدي كه مي خواهيد جستجو بر اسـاس آن صـورت گيـرد را از داخل ComboBox انتخاب كرده و سپس عبارت مورد جستجو را در داخل فيلد Criteria Search وارد كنيد.

در آخر نيز روي دكمه ي Search Perform كليك كنيد.
اگر ركورد مورد نظر شما در بين داده ها پيدا شود، مشاهده خواهيد كرد كه اطلاعات آن ركـورد در فـرم نمـايش داده مـي شود و موقعيت ركورد جاري به ركورد پيدا شده تغيير مي كند.

همچنين پيغامي در نوار ابزار نوشته مي شود و مشخص مي كند كه ركورد مورد نظر پيدا شده است  همچنين اگر هيچ ركوردي پيدا نشود، متني در نوار وضعيت نوشـته خواهد شد و مشخص مي كند كه داده ي مورد نظر پيدا نشده است.

به قسمت دویست و سی و هشتم بروید.


درباره نویسنده
سجاد اسدی
   سجاد اسدی

سجاد اسدی هستم دانشجوی رشته نرم افزار و علاقه مند به تدریس و یادگیری دروس مرتبط با تکنولوژی نرم افزار و اینترنت اشیاء جهت ارتباط با بنده مراجعه شود به آیدی سروش و تلگرام : @ordervira و پیج بنده در اینستاگرام instagram.com/sajjadred11 ""اللهم صل علی محمد و آل محمد"" برای شروع هیچ وقت دیر نیست. "الهم عجل لولیک الفرج"

دیدگاه بگذارید

avatar
  اشتراک  
اطلاع رسانی

aparat کانال آپارات

soroush کانال سروش

کانال آی گپ