آموزش ASP.Net > کنترل های استاندارد > کنترل ویزارد Wizard
مقدمه و معرفی کنترل ویزارد Wizard

Skip Navigation Links.

مقدمه :

یکی از نیازهای اساسی در طراحی صفحات وب پویا ، امکان تعامل با کاربر و دریافت مقادیر مورد نظر از وی برای تکمیل فرم های مثل فرم ثبت نام یا سفارش کالاست .
کنترل ویزارد این امکان را به ما می دهد تا چندین فرم را به صورت مرحله به مرحله به کاربر نمایش داده و در هر مرحله اطلاعات لازم را از وی دریافت کنیم .
به وسیله این کنترل می توانید مراحل ویزارد را به ترتیب مورد نظر تعیین کرده ، بر حسب انتخاب ها یا مقادیر ورودی کاربر ، مرحله یا مراحل بعدی را تنظیم نموده و ترتیب مراحل را تغییر دهید .
به عبارت دیگر کنترل ویزارد Wizard ، مجموعه ای از فرم ها را در قالب یک رابط کاربری به کاربر نمایش داده و اطلاعات را از وی دریافت می کند . شما می توانید به راحتی ظاهر این کنترل را توسط قالب ها تعیین نموده و دکمه های مسیر را در آن قرار دهید .

تعیین مراحل کنترل ویزارد ( Wizard Steps ) :

در کنترل ویزارد ، هر مرحله از دریافت اطلاعات و فرم آن تحت عنوان یک Step ایجاد می شود . کنترل می تواند از هر چند مرحله یا Step لازم تشکیل شود . کاربر هر Step را که کامل نمود ، با کلیک بر روی دکمه های پیمایش به Step بعدی می رود تا فرآیند کامل شود .
به طور کلی در کنترل ویزارد Wizard ، 3 نوع Step داریم :

  1. beginnign step : این Step ، مرحله آغازین ویزارد است .
  2. intermediate step : این Step ، مراحل میانی ویزارد را تعیین می کند . یک کنترل ویزارد Wizard ، می تواند چندین Step میانی داشته باشد .
  3. completation step : این Step مرحله آخر ویزارد است . در آن می توان اطلاعات را جمع بندی و ارسال نمود .

شما در هر مرحله از ویزارد ، می توانید انواع کنترل های ASP.Net را برای دریافت اطلاعات از کاربر قرار دهید ، مقل کنترل های کادر متن ( TextBox ) یا کادرهای انتخابی ( ListBox ) و ... .

مثال عملی : کد زیر ، یک کنترل ویزارد را نشان می دهد که دارای 2 مرحله است :

کد <asp:Wizard ID="Wizard1" Runat="server">
   <WizardSteps>
       
<asp:WizardStep ID="WizardStep1" Runat="server" Title="Step 1">
        </asp:WizardStep>
        <asp:WizardStep ID="WizardStep2" Runat="server" Title="Step 2">
        </asp:WizardStep
>
   </WizardSteps>

</asp:Wizard>
خروجی
Skip Navigation Links.
Step 1
Step 2

دکمه های پیمایش و حرکت در کنترل ویزارد Wizard :

کنترل ویزارد هم از قابلیت پیمایش خطی و هم غیر خطی ، برای حرکت بین Step ها پشتیبانی می کند .
سیستم مدیریت کنترل ویزارد ( State Managment ) این امکان را به کاربر می دهد ، تا بدون از دست دادن اطلاعاتی که در هر مرحله وارد نموده ، بین مراحل جلو و عقب رفته و اطلاعات خود را بازبینی و اصلاح نماید .
همجنین لیست مراحل کاری کنترل در یک تولبار عمودی در سمت چپ یا راست کنترل نمایش داده می شود ، که با کلیک بر روی عنوان هر مرحله ، می توان به صورت مستقیم به آن مرحله حرکت نمود .
می توانید متن دکمه های پیمایش کنترل را درون تگ اصلی کنترل ویزارد به وسیله خواص StepNextButtonText, StepPreviousButtonText و FinishCompleteButtonText تعیین نمایید . همانند کد زیر :

کد <asp:Wizard ID="Wizard2" Runat="server"
   StepNextButtonText=" Next >> "
   StepPreviousButtonText=" << Previous "
   FinishCompleteButtonText=" Done! " >

سفارشی کردن سایر تنظیمات کنترل ویزارد Wizard :

کنترل ویزارد به صورت اتوماتیک ، یک عنوان را در هر مرحله Step نمایش می دهد . این عنوان را می توانید توسط خاصیت HeaderText تعیین نمایید . همچنین می توانید تمپلیت کلی سر عنوان هر مرحله را به وسیله المنت HeaderTempalte مشخص سازید .
امکان دیگر این است که به صورت دلخواه می توانید یک دکمه لغو Cancel را با قرار دادن مقدار خاصیت DisplayCancelButton برابر با true ، در هر مرحله Step قرار دهید .
همچنین خاصیت NavigationButtonStyle را می توانید برای تعیین ظاهر کنترل های پیمایش درون هر مرحله به صورت عمومی یا کلی به کار ببرید .
کارایی خواص فوق را در مثال های زیر بررسی کرده ایم .

تنظیمات دکمه های پیمایش کنترل ویزارد Wizard :

در کنترل ویزارد ، می توانید ظاهر هر کدام از دکمه های پیمایش موجود در مراحل آن را به وسیله خواص زیر تعیین نمایید : خواص زیر تعیین نمایید :

  1. StartNavigationTemplate : برای تعیین ظاهر کنترل شروع ویزارد به کار می رود .
  2. FinishNavigationTemplate : برای تعیین ظاهر کنترل پایانی ویزارد به کار می رود .
  3. StepNavigationTemplate : برای تعیین ظاهر کنترل های میانی ویزارد به کار می رود .
  4. SideBarTemplate : برازی تعیین ظاهر منوی عمودی کنار کنترل که لیت مراحل ویزارد را نمایش می دهد ، به کار می رود .

رویدادهای کنترل ویزارد Wizard :

به وسیله انواع رویدادهای فراهم شده برای کنترل ویزارد Wizard ، به راحتی می توان رفتار این کنترل را با نوشتن کدهای لازم ، کنترل نمود .
برای مثال می توان از رویداد NextButtonClick برای جمع آوری اطلاعات در پایان هر مرحله استفاده نمود . این رویداد در هنگام کلیک کاربر بر روی دکمه Next اجرا می شود .
پارامترهای WizardNavigationEventArgs در هنگام فراخوانی رویداد فوق ، مقادیر CurrentStepIndex ( اندیس مرحله جاری ) و NextStepIndex ( اندیس مرحله بعدی ) را به رویداد ارسال می کنند که از آنها می توان برای تشخیص مرحله و اجرای کد لازم استفاده نمود .
در نهایت می توان رفتار کنترل را در هنگام کلیک کاربر بر روی دکمه های Previous و Finish به ترتیب با رویدادهای PreviousButtonClick و FinishButtonClick هندل نمود .
همچنین می توانید کلیه اطلاعات مرحله جاری و یا کنترل را با استفاده از رویداد CancelButtonClick که در هنگام کلیک کاربر بر روی دکمه Cancel اجرا می شود ، پاک  نمود .



راجع این مطلب سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...         >>>>>  ورود به انجمن تخصصی


نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1 حمایت نمایید :

آیا مطالب این صفحه برای شما مناسب و مفید بوده است :

نام :                 
آدرس Email :    
 
نظر شما :  
 
سوال امنیتی : پایتخت ایران ؟      
حمایت از سایت Developer1