صفحه 1 از 2 12 آخرآخر
نمایش نتایج 1 تا 40 از 43

نام تاپیک: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

  1. #1
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نحوه استفاده از کنترل های ASP.NET AJAX**قسمت اول**

    توجه:
    کلیه ی حقوق این مقاله متعلق به سایت www.barnamenevis.org است.
    نقل از نوشته های این مقاله منوط به ذکر نام منبع است.
    با توجه به سوالات متفاوتی که اعضای جدید سایت در مورد نحوه استفاده از کنترل های MS AJAX می پرسیدن بر آن شدم مقاله ای در مورد شیوه بکارگیری این کنترل ها در یک برنامه تحت وب بنویسم .
    امیدوارم این مقاله بتونه شروع خوبی برای دوستانی باشه که می خوان از این تکنولوژی در سایت هاشون استفاده کنن و در ابتدای راه هستن ....

    مقدمه :

    در مورد مفاهیم اولیه AJAX یا ای جکس میتونین به این لینک مراجعه کنید . فرض بر اینه که دوستان آشنایی اولیه دارن .
    مایکروسافت ازون جایی که ارادت خاصی به مشتریاش داره! اومد کار رو برای برنامه نویسان ASP.NET راحت کرد و مجموعه ای رو تحت عنوان ATLAS ارائه کرد که امکان ایجاد حرکت های نمایشی AJAX ای رو در ASP.NET فراهم میکرد !
    این مجموعه توسعه یافت و تحت عنوان MS AJAX یا ASP.NET AJAX نهایی شد .
    در این مجموعه کنترل هایی ارائه شده که هر کدوم کاربرد خاصی دارن و مورد استفاده در ASP.NET 2.0 هستن .
    برای شروع ابتدا باید ASP.NET AJAX v1.0 رو که حدود 1.4 مگابایته از سایت مایکروسافت دانلود و نصب کنید . پس از نصب ، کنترل های مورد نظر به ToolBox ویژوال استودیو اضافه خواهد شد . در پست های بعدی راجع به کنترل های AJAX Toolkit هم صحبت میکنیم .
    در ادامه یک پروژه ایجاد و از امکانات اولیه ASP.NET AJAX در اون پروژه استفاده می کنیم . . .

  2. #2
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نحوه استفاده از کنترل های ASP.NET AJAX**قسمت دوم**

    یه نکته و اون اینکه پس از نصب اون فایل یه سری dll در مسیر پیش فرض زیر بصورت اتوماتیک کپی میشن :
    C:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions
    چیزی که مهمه اینه اگه خواستید سایتتون رو روی هاست Upload کنید باید این dll هارو در پوشه bin پروژتون روی هاست کپی کنید .
    این مساله یکی از سوالات متداول دوستان بوده که وقتی سایتشون رو آپلود می کردن با یه سری Error های جاوا اسکریپتی مواجه میشدن که این بر میگرده به در نظر نگرفتن همین نکته .(البته در بعضی از هاست ها بدون کپی کردن این dll ها هم ای جکس سایت شما به زیبایی کار خواهد کرد که این نشون دهنده ی این موضوع هست که اون فایل رو سرور نصب شده)
    خوب پس از نصب ASP.NET AJAX Extensions v1.0 ویژوال استادیو رو باز کنید . از منوی فایل گزینه New Web Site رو انتخاب کنید ، در پنجره ای که باز میشه یه آیتم جدید به نام ASP.NET AJAX-Enabled Web Site اضافه شده که شما برای استفاده از کنترل های ای جکس در پروژتون باید این گزینه رو انتخاب کنید و بعد هم OK . در Toolbox عنوانی اضافه شده به نام AJAX Extensions که اگه بازش کنین لیست کنترل های ای جکسی رو می بینین ...
    کنترل های UpdatePanel و UpdateProgress بیشترین استفاده رو دارن .
    توی اکثر وب سایت ها دیدید که مثلا موقع ثبت نام وقتی میخواین username رو وارد می کنین یه باتن هست که availabe بودن اون username رو بررسی میکنه وقتی روش کلیک میکنین یه چیزی مثه Please Waiting سه چهار ثانیه نمایش داده میشه و بدون اینکه صفحه Refresh شه میگه این username قبلا ثبت شده و یکی دیگه وارد کن ! این عملیات توسط همین دو کنترل به سادگی انجام میشه ...
    در محیط Design روی فرم یه آبجکتی به نام ScriptManager قرار داره بهش کار نداشته باشین بزارین باشه واسه خودش! برای شروع یه Label با یه Button رو فرم بذارید و در رویداد Page Load بنویسید :
    Label1.Visible=false;
    و در Onclick باتن visibilty رو true کنید :
    Label1.Visible=true;
    وقتی برنامه رو Run کنید label دیده نمیشه و با کلیک روی باتن و Refresh شدن صفحه label ظاهر میشه ! در واقع باتن جزء کنترل هایی هست که باعث postback صفحه میشه . خوب حالا از Toolbox کنترل UpdatePanel رو انتخاب کنید و روی فرم قرار بدید label و button رو در این UpdatePanel بندازید و برنامه رو اجرا کنید حالا اگه روی button کلیک کنید اعجاب سال 2007 رو خواهید دید ! بدون اینکه صفحه Refresh بشه label ظاهر میشه .

    کنترل هایی که با UpdatePanel سازگار نیستن عبارتند از :
    • TreeView & Menu
    • ASP.NET Web Parts Control
    • FileUpload که البته راه حل داره !
    • GridView & DetailsView البته زمانی که ویژگی EnableSortingAndPagingCallbacks به true ست شده باشه . در حالت پیش فرض false هست .
    • Login,PasswordRecovery,ChangePassword,CreateUserWi zard
    • Substitution
    • Validation Controls

    اگه خواستین کنترل FileUpload رو تو UpdatePanel بذارید ازین تاپیک می تونین استفاده کنید.
    بقیه کنترل ها مشکل خاصی ندارن و قابل استفاده هستن .
    همونطور که دیدید بدون refresh صفحه کدی که در رویداد Button بود اجرا شد . حالا این کد هر چیزی میتونه باشه مثه یه Query که از دیتابیس گرفته میشه و یه سری رکورد قراره برگردونه ... عملا به دلیل postback نشدن صفحه سایت شما UserFriendly تر میشه و بقول بچه ها به دل کاربر میشینه !
    در حالتی که یه label ظاهر یا مخفی میشه این کار خیلی سریع انجام میشه اما ممکنه در button شما یه پرس و جوی دیتابیسی نوشته باشی و در حالتی که سایت Upload شده و با توجه به سرعت زیبای اینترنت در وطن مثلا 5 ثانیه زمان ببره تا کد توی رویداد کلیک باتن اجرا شه ، تو این حالت معمولا یه شکل گرافیکی با یه متن مثه لطفا صبر کنید به کاربر نمایش داده میشه تا کاربر بفهمه که پردازش در حال انجامه !
    این کار توسط کنترل UpdatePrgress انجام میشه که در ادامه بهش خواهیم پرداخت . . .
    آخرین ویرایش به وسیله m.hamidreza : چهارشنبه 08 آبان 1387 در 20:38 عصر

  3. #3
    کاربر دائمی آواتار el_abdollahi
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    شهر قنات و قنوت و قناعت
    پست
    476
    سلام
    من قبلا با AJAX آشنایی نداشتم و سایتی رو که دارم روش کار میکنم از نوع وب سایت معمولی هستش ، آیا می تونم از AJAX توش استفاده کنم ؟
    استفاده کردم ولی هیچ تغییری در عملکرد فرم حاصل نشد .

  4. #4
    باید به web.config یه سری چیزها رو اضافه کنین.

    برای راحتی میتونین web.config یه پروژه که به صورت AjaxEnable هستش رو ببینین و قسمت های مورد نیاز رو کپی کنین توی web.config پروژه ای که قصد ajax ای کردن اونو دارین.

    قسمت های مورد نظر بسیار تابلو می باشند.

  5. #5
    کاربر دائمی آواتار el_abdollahi
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    شهر قنات و قنوت و قناعت
    پست
    476
    سلام .
    با تشکر . الان سایتم با AJAX سازگار شده و صفحاتم رو بدون post back اجرا میکنه .
    فقط ببخشید اینقدر سوال میپرسم ولی توی صفحاتم از دستور زیر استفاده میکنم که موقع اجرا یه alert بهم میده و اجرا نمیشه :

    Response.Write(
    "<script language='javascript' type='text/javascript' > window.open('Brief.aspx','_blank')</script>")

  6. #6
    کاربر دائمی آواتار el_abdollahi
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    شهر قنات و قنوت و قناعت
    پست
    476
    این هم از error
    عکس های ضمیمه عکس های ضمیمه

  7. #7
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    37
    پست
    1,227
    کلاً Ajax با Response.write مشکل داره ، و همچنین با ClientScript هم درست جواب نمیده برای حل این مشکل شما باید Scriptmanager استفاده کنی .
    میتونی این تاپیک هم یه نگاهی بندازی
    https://barnamenevis.org/showthread.php?t=83085

  8. #8
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نحوه استفاده از کنترل های ASP.NET AJAX**قسمت سوم**

    و اما UpdateProgress Control .
    همونطور که در پست قبل گفتم ممکنه فرآیند پاسخگویی به کاربر مدتی زمان ببره و چون صفحه هم Refresh نمیشه یه جوری باید به کاربر فهموند که درخواستش در حال پردازشه و باید منتظر بمونه در غیر اینصورت کاربر فکر میکنه انجام نشده و ممکنه چندین بار روی Button کلیک کنه که باعث بروز خطا میشه ! برای فهم بهتر با یه مثال عملکرد UpdateProgress رو بررسی میکنیم .
    یه پروژه ی جدید از نوع AJAX-Enabled Web Site ایجاد کنید یه UpdatePanel تو فرم بذارید و یه Label و یه Button توی UpdatePanel . در رویداد Page_Load کد زیر رو بنویسید :
    Label1.Text=DateTime.Now();
    برنامه رو اجرا کنید Time جاری در Label نمایش داده میشه و اگه روی Button کلیک کنید Time آپدیت میشه بدون Refresh صفحه ! با کلیک روی button رویداد Page_Load فراخوانی میشه و چون button در UpdatePanel هست postback ای نداریم . خوب تا اینجا دقیقا مثه مثال قبلی بود .
    اما مطلب جدید اینکه چون ما برنامه مون روی localhost اجرا میشه سرعت بسیار بالاست برای شبیه سازی محیط localhost به محیط سرور اصلی (یعنی زمانی که سایت رو رو هاست Upload میکنیم) از یه خط کد استفاده میکنیم تا کاربرد UpdateProgress رو بتونیم دریابیم . این خط کد اینه :
    System.Threading.Thread.Sleep(3000);
    این خط رو در رویداد Page_Load اضافه کنید یعنی Page_Load بشه این :

    System.Threading.Thread.Sleep(3000);
    Label1.Text=DateTime.Now();
    این خط کد یه delay یا تاخیر در اجرای کد ایجاد میکنه که مقدارش برابر با همون عددی هست که داخل پرانتز بهش پاس شده و این مقدار به میلی ثانیه هست یعنی الان 3 ثانیه تاخیر ایجاد میکنه حالا طبیعتا اگه بجای 3000 نوشته بودیم 5000 ، 5 ثانیه تاخیر داشتیم !
    اگه برنامه رو دوباره اجرا کنید و روی button کلیک کنید بعد از 3 ثانیه Time آپدیت میشه ! بعبارت دیگه هروقت روی button کلیک کنی بعد 3 ثانیه time آپدیت میشه .
    علت استفاده ازون کد فقط شبیه سازی محیط localhost با server هست وگرنه وقتی سایت رو آپلود کردید اون خط رو باید پاک کنید . چون رو سرور به اندازه کافی تاخیر هست مخصوصا اگه در باتن یه ارتباط با دیتابیس برقرار کرده باشید و مثلا یه select ساده نوشته باشین .
    حالا میخوایم کاری کنیم که در طول این مدت یعنی 3 ثانیه بنویسه که Please Wait و یه شکل گرافیکی مثه سایت برنامه نویس (همین که یه گردالی میچرخه! ) رو نشون بده .
    یه کنترل UpdateProgress از toolbox روی فرم قرار بدید و یه متنی رو مثه "لطفا منتظر بمانید..." توش تایپ کنید و بعد پروژه رو run کنید وقتی روی باتن کلیک کنید اون متن به مدت 3 ثانیه نمایش داده میشه و بعد time آپدیت میشه . علاوه بر متن یه فایل gif (در ضمیمه هست) هم میتونید قرار بدید . فقط دقت کنید در حالتی که سایت رو آپلود میکنید دیگه نیازی به کد Threading نیست و متن UpdateProgress بصورت اتوماتیک تا زمانی که جواب از سرور بیاد نمایش داده میشه و بعد ازون دیگه نمایش داده نمیشه .

    در ادامه به کنترل های Ajax Toolkit خواهیم پرداخت ...
    عکس های ضمیمه عکس های ضمیمه

  9. #9
    کاربر دائمی آواتار merlin_vista
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    نصف جهان
    پست
    1,014
    برای ساخت تصاویر زیباتر لودینگ برای UpdateProgress میتوانید از سایت زیر استفاده کنید :

    http://www.ajaxload.info

  10. #10
    دوستمون این تاپیک رو به عنوان یک مقاله ی آموزشی ایجاد کردند!
    چرا بحث تاپیک رو تغییر میدید؟
    اگر سوالی دارید، تاپیکی ایجاد کنید و سوالتون رو در اون تاپیک بپرسید.
    لطفا از Reply به این تاپیک خودداری بفرمایید.

    متشکرم.

  11. #11
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نحوه استفاده از کنترل های ASP.NET AJAX**قسمت چهارم**

    AJAX Control Toolkit
    ============
    خوب در این پست شیوه نصب AJAX Control Toolkit رو بررسی میکنیم .
    همون طور که در پست های قبلی گفته شد کنترل های Toolkit کنترل هایی هستن که هر کدوم به منظوری خاص ایجاد شدن و در واقع یه سری کنترل برای سفارشی کردن وب سایت شماست . یه نگاه به این کنترل ها بندازید تا التفات کامل حاصل شود ، در لیست سمت چپ کنترل ها رو انتخاب کنید یه نمونه میبینید که میتونید تستش کنید :
    AJAX CONTROL TOOLKIT SAMPLES

    برای این که بتونید از این کنترل در وب سایتتون استفاده کنید این مراحل رو باید انجام بدید :
    از اینجا فایل AjaxControlToolkit.zip رو دانلود کنید بعد Unzip شدشو تو مسیر زیر کپی کنید :

    C:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions
    تو اون پوشه ای که کپی کردید تو پوشه AjaxControlExtender یه فایل هست با پسوند VSI. این فایل رو اجرا کنید . بعد ویژوال استادیو رو باز کرد و یه وب سایت جدید NEW کنید در پنجره ی NEW یه گزینه ای به نام AJAX Control Toolkit Website اضافه شده ، اونو انتخاب کنید و پروژه رو ایجاد کنید .
    سپس توی Toolbox کلیک راست کنید Add a Tab رو انتخاب کنید . توی Tab بنویسد مثلا AJAX Control Toolkit . حالا در همون قسمت کلیک راست کنید choose item رو انتخاب کنید ، بعد دکمه Browse رو بزنید تو پوشه ای که در درایو C کپی کردین یه dll به نام AjaxControlToolkit هست اونو انتخاب کنید و ....
    در اون قسمت این کنترل ها تو Toolbox اضافه میشن که مثه سایر کنترل ها با یه drag-drop رو فرم قرار میگیرن و قابل استفاده هستن .
    دیگه نحوه استفاده از این کنترل ها با توجه به وسعت بسیار اینترنت و sample های موجود در این زمینه کار خیلی سختی نیست !
    لینک video های Ajax :
    http://asp.net/ajax/documentation/

    پــــــــــــــــــــــــ ــــا یـــــــــــــــــــــــا ن

    امیدوارم این تاپیک مفید بوده باشه و مورد استفاده دوستان قرار گرفته باشه ! کمی کاستی چیزی هم اگه داشت دیگه به بزرگواری خودتون ببخشید !

  12. #12
    کاربر دائمی آواتار merlin_vista
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    نصف جهان
    پست
    1,014
    آقا من از کنترل MaskedEditExtender در Toolkit استفاده کردم برای اعداد ولی میخواهم تا هر رقمی را که وارد کرد 3 رقم 3 رقم بشه نه یه عدد محدود باید چکار کنم ؟

  13. #13
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    37
    پست
    1,227
    شما از تابع تاوا اسکریپت استفاده کن و سه رقم را جدا کن و همچنین از FilteredTextbox استفاده کن تا چیزی به غیر از عدد وارد نکنه .. ولی اینطوری که شما میگید تا حالا امتحان نکردم .

  14. #14
    کاربر دائمی آواتار mahdi_negahi
    تاریخ عضویت
    آذر 1384
    محل زندگی
    www.iranbuycenter.com
    پست
    582
    شما از تابع تاوا اسکریپت استفاده کن و سه رقم را جدا کن و همچنین از FilteredTextbox استفاده کن تا چیزی به غیر از عدد وارد نکنه .. ولی اینطوری که شما میگید تا حالا امتحان نکردم .
    اگر این کارو بکنی FilteredTextbox نمیگذاره اون کاراکتری که برای جدا کردن 3 رقم است را وارد شه و نمایش داده شود

    در الان این بخش یک سایت آمده است که نویسنده محترم یک فایل جاوا اسکریپت دارد که همه آن کارهارو میکند
    در استفاده از AgaxToolkit و MS Ajax تا به حال توجه به حجم صفحات کردید ؟

  15. #15
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    37
    پست
    1,227
    اگر این کارو بکنی FilteredTextbox نمیگذاره اون کاراکتری که برای جدا کردن 3 رقم است را وارد شه و نمایش داده شود
    چرا میزاره ، اگر رو حالت Custom بزارید و ValidChar را خودتون تنظیم کنید ، میتونید اینکارو بکنید ،
    استفاده از AgaxToolkit و MS Ajax تا به حال توجه به حجم صفحات کردید ؟

    دقیقاً حجم صفحات خیلی زیاد میشه ، ولی با اون پستی که خدتون داخل تاپیک کمپرسر کردن دادید مشکل حجم هم حل میشه و فوق العاده میشه .

  16. #16
    من برنامه تا الان بدون ajax نوشتم ایا صفحات بعدی را می توانم با ajax کار کنم؟
    البته وقتی که صفحه جدید می خواهم اضافه کنم ASP.NET AJAX Extensions v1.0 وجود ندارد
    (تمامی مراحلی که گفتیند در یک پروژه دیگر انجام دادم و جواب گرفتم
    ) با تشکر

  17. #17
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465
    نقل قول نوشته شده توسط karimi84 مشاهده تاپیک
    من برنامه تا الان بدون ajax نوشتم ایا صفحات بعدی را می توانم با ajax کار کنم؟
    بله ! پست 3 و 4 همین تاپیک رو یه نگاه بکن ... جواب سوال شماست .

  18. #18
    کاربر دائمی آواتار merlin_vista
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    نصف جهان
    پست
    1,014

    Lightbulb ConfirmButton

    در ادامه فعالیت دوست عزیز m.hamidreza
    توضیح بعضی از ابزار کامپونت های AjaxControlToolkit قسمت اول
    ConfirmButton Demonstration
    از این مکامپنت مجود در AjaxControlToolkit میتوانید برای پرسیدن سوال در هنگام پست بک ها توسط دکمه استفاده کنید !!
    اگر میخواهید درگیر کدهای جاوا نشوید برای این گونه پیغام ها این کامپونت پیشنهاد میشود ؟
    برای آزمایش یک TextBox بر روی صفحه بیارید + یک عدد دکمه و از کامپونت ها AjaxControlToolkit هم نیز کامپونت ConfirmButton را نیز بیارید .
    سپس در روال Click دکمه کد زیر را بنویسید
    this.TextBox1.Text=DateTime.Now.ToShortDateString(  ).ToString();

    حال نوت به نتظیم ConfirmButton رسیدا است !! کد مربوط به ConfirmButton را در قسمت ASP پیدا کنید و تنظیمات زیر را به دلخواه انجام دهید :
    <ajaxToolkit:ConfirmButtonExtender ID="cbe" runat="server" TargetControlID="LinkButton1" ConfirmText="Are you sure you want to click this?" OnClientCancel="CancelClick" />

    TargetControlID = نام دکمه را برای کنترل بنویسید !
    ConfirmText = متن سوال را در این قسمت وارد کنید (توجه داشته باشید که استفاده از کدهای HTML در این قسمت مجاز است ) به عنوان مثال : (ex: " " for new-line)
    OnClientCancel = اگر میخواهید رویداد خاصی در هنگام کلیک کاربر بر روی Cancel اتفاق بیفتد از این قسمت استفاده کنید .
    DisplayModalPopupID = اگر میخواهید پیغام را خودتان طراحی کنید . مثلاً در یک Panel از این قسمت استفاده کنید و نام Panel را وارد کنید !

  19. #19
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465
    @merlin_vista
    دستت درد نکنه برادر ! فقط من خودم دارم راجع به AnimationExtender و Accordion می نویسم . شما اگه خواستی زحمت بکشی غیر این دو تا رو بنویس ...

  20. #20
    کاربر جدید
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    مشهد
    پست
    8

    HttpCompression+Tab panel

    سلام
    من در صفحه هام از tab panel ajaxtoolkit استفاه کردم حالا وقتی از کمپرسور صفحه استفاده کردم
    صفحه هام زمان لود شدن قاطی میکنه و لود نمیشه.

  21. #21
    نقل قول نوشته شده توسط m.hamidreza مشاهده تاپیک
    و اما UpdateProgress Control .
    همونطور که در پست قبل گفتم ممکنه فرآیند پاسخگویی به کاربر مدتی زمان ببره و چون صفحه هم Refresh نمیشه یه جوری باید به کاربر فهموند که درخواستش در حال پردازشه و باید منتظر بمونه در غیر اینصورت کاربر فکر میکنه انجام نشده و ممکنه چندین بار روی Button کلیک کنه که باعث بروز خطا میشه ! برای فهم بهتر با یه مثال عملکرد UpdateProgress رو بررسی میکنیم .
    یه پروژه ی جدید از نوع AJAX-Enabled Web Site ایجاد کنید یه UpdatePanel تو فرم بذارید و یه Label و یه Button توی UpdatePanel . در رویداد Page_Load کد زیر رو بنویسید :
    Label1.Text=DateTime.Now();
    برنامه رو اجرا کنید Time جاری در Label نمایش داده میشه و اگه روی Button کلیک کنید Time آپدیت میشه بدون Refresh صفحه ! با کلیک روی button رویداد Page_Load فراخوانی میشه و چون button در UpdatePanel هست postback ای نداریم . خوب تا اینجا دقیقا مثه مثال قبلی بود .
    اما مطلب جدید اینکه چون ما برنامه مون روی localhost اجرا میشه سرعت بسیار بالاست برای شبیه سازی محیط localhost به محیط سرور اصلی (یعنی زمانی که سایت رو رو هاست Upload میکنیم) از یه خط کد استفاده میکنیم تا کاربرد UpdateProgress رو بتونیم دریابیم . این خط کد اینه :
    System.Threading.Thread.Sleep(3000);
    این خط رو در رویداد Page_Load اضافه کنید یعنی Page_Load بشه این :

    System.Threading.Thread.Sleep(3000);
    Label1.Text=DateTime.Now();
    این خط کد یه delay یا تاخیر در اجرای کد ایجاد میکنه که مقدارش برابر با همون عددی هست که داخل پرانتز بهش پاس شده و این مقدار به میلی ثانیه هست یعنی الان 3 ثانیه تاخیر ایجاد میکنه حالا طبیعتا اگه بجای 3000 نوشته بودیم 5000 ، 5 ثانیه تاخیر داشتیم !
    اگه برنامه رو دوباره اجرا کنید و روی button کلیک کنید بعد از 3 ثانیه Time آپدیت میشه ! بعبارت دیگه هروقت روی button کلیک کنی بعد 3 ثانیه time آپدیت میشه .
    علت استفاده ازون کد فقط شبیه سازی محیط localhost با server هست وگرنه وقتی سایت رو آپلود کردید اون خط رو باید پاک کنید . چون رو سرور به اندازه کافی تاخیر هست مخصوصا اگه در باتن یه ارتباط با دیتابیس برقرار کرده باشید و مثلا یه select ساده نوشته باشین .
    حالا میخوایم کاری کنیم که در طول این مدت یعنی 3 ثانیه بنویسه که Please Wait و یه شکل گرافیکی مثه سایت برنامه نویس (همین که یه گردالی میچرخه! ) رو نشون بده .
    یه کنترل UpdateProgress از toolbox روی فرم قرار بدید و یه متنی رو مثه "لطفا منتظر بمانید..." توش تایپ کنید و بعد پروژه رو run کنید وقتی روی باتن کلیک کنید اون متن به مدت 3 ثانیه نمایش داده میشه و بعد time آپدیت میشه . علاوه بر متن یه فایل gif (در ضمیمه هست) هم میتونید قرار بدید . فقط دقت کنید در حالتی که سایت رو آپلود میکنید دیگه نیازی به کد Threading نیست و متن UpdateProgress بصورت اتوماتیک تا زمانی که جواب از سرور بیاد نمایش داده میشه و بعد ازون دیگه نمایش داده نمیشه .

    در ادامه به کنترل های Ajax Toolkit خواهیم پرداخت ...

    ببخشید یک سوال ؟!
    این UpdateProgress رو چرا من پیدا نمی کنم ؟
    کجاست ؟
    البته من اون فایل مربوط به آجاکس رو نصب کردم.
    tab ی هم به نام ajax extensions دارم ولی چنین چیزی توش نیست ؟

  22. #22
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465
    ولی چنین چیزی توش نیست ؟
    UpdatePanel داری ؟! مراحل نصب احتمالا مشکل داشته ... شما اول روی سیستمت مسیر این فایل رو پیدا کن :
    AJAXExtensionsToolbox.dll (اگه نبود دوباره باید نصب کنی)
    اون tab رو delete کن یه tab ایجاد کن بعد توی همون tab که الان چیزی توش نیست کلیک راست کن choose item رو انتخاب کن بعد با browse مسیر اون dll رو پیدا کن و اضافه کن ببین چی میشه ...

  23. #23
    والا من با اسکریپت منیجر و آپدیت پنلش کار می کردم ولی این اپدیت پروگرس اصلا توش وجود نداره . آدرس dll اش رو هم پیدا کردم ولی تا می یام add کنم erro می ده که نمی تونه لودش کنه !
    من یکبار هم repairesh کردم ولی فایده نداشت.
    حالا می شه آدرس فایلش رو اصلا بده من برم اون رو دانلود کنم ؟!

  24. #24
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465
    I donno !
    ببین توی Source به تگ UpdateProgress دسترسی داری ؟! شاید اونجا بتونی تعریف کنی . یه همچین کدی رو بنویس تو source ت :


    <asp:UpdateProgress ID="UpdateProgress1" runat="server" >
    <ProgressTemplate>
    <asp:Image ID="loading" runat="server" ImageUrl="~/Images/Loading.gif" />
    Please wait . . .
    </ProgressTemplate>
    </asp:UpdateProgress>

  25. #25
    خیلی جالب بود.
    من این پک رو خیلی وقت پیش گرفته بودم.
    حالا رفتم ورژن جدیدش رو گرفتم داخلش آپدیت پروگرس بود
    ولی ورژن قبلی اصلا همچین چیزی نداشت !

  26. #26
    کاربر دائمی آواتار fazel-d
    تاریخ عضویت
    آذر 1386
    محل زندگی
    بورکینافاسو
    پست
    399

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    TextBoxWatermark
    همون چيزي كه در بالاي صفحه سايت barnamenevis.org جهت جستجوي توي گوگل مي بينيد.
    در اين كنترل به جاي قرار دادن يه ليبل قبل از اين تكس باكس مي تونيد يه برچسب در داخل اين كنترل قرار بدين . كه با كليك كردن در داخلش نوشته ها حذف و با خارج شدن كنترل از اون دوباره نوشته ها بر مي گرده. البته مي تونيد حتي عكس هم توش بذارين.
    <ajaxToolkit:TextBoxWatermarkExtender ID="TBWE2" runat="server"
    TargetControlID="TextBox1"
    WatermarkText="Type First Name Here"
    WatermarkCssClass="watermarked" />
    TargetControlID :يه تكس باكس
    WatermarkText : متن قابل نمايش
    WatermarkCssClass : كلاس css در زمان نمايش متن كه مقداري ندارد به كار مي رود.


  27. #27
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    شیراز
    سن
    42
    پست
    39

    Lightbulb نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    با تشكر از دوستان عزيزي كه زحمت كشيدند و مطلب و مقاله و آموزش در اين رابطه قرار داده اند:
    1- لينك مربوط به دانلود AjaxControlToolkit-Framework3.5 رو مي زارم:
    http://www.codeplex.com/AjaxControlT...ReleaseId=8513

    2- مي خواستم بدونم طريقه نصب اين ورژن آپديت شده مثل ورژن براي فريم ورك 2 است؟
    3- اگه كسي توضيحات اضافه و مكملي در مورد اين ورژن داره، لطفا منت گذاشته و در اينجا مطرح كنه.
    پيشا پيش ممنون

    راستي براي دوستاني كه مثل من تازه با اين toolkit آشنا شده اند :
    http://www.asp.net/ajax/ajaxcontroltoolkit/samples/
    بر روي منوي سمت چپ كليك كنيد و مثالهاي مختلف اين ابزار را ببينيد و لذت ببريد!

  28. #28
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    نقل قول نوشته شده توسط hassan_h مشاهده تاپیک
    میشه این آموزش رو ادامه بدین!
    ان شاءا...
    یه مشکلی که MS AJAX داره بالارفتن وحشتناک حجم صفحه است که اگه عمری باقی باشه در ادامه به تکنیک های کاهش این حجم با استفاده از رهنمودهای مهندس بهروز خواهم پرداخت...

    نقل قول نوشته شده توسط moosa2007 مشاهده تاپیک
    آموزش عالی هست در انتها در صورت امکان این آموزش را در قالب فایل PDF نیز قرار دهید
    چشم!

    نقل قول نوشته شده توسط aminpourazadeh مشاهده تاپیک
    میشه نحوه کار با AnimationExtender را به منم بگید؟؟؟
    http://www.asp.net/ajax/ajaxcontroltoolkit/samples/
    توی سایت asp.net سمپل های خوبی میتونید پیدا کنید.

  29. #29

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    سلام به همگي.
    m.hamidreza عزيز خواستم ببينم امكانش هست در مورد Animation توضيح بديد؟ همونطور كه در پستهاي قبلي گفتيد يكي از مواردي كه مي خواستيد توضيح بديد همين مورد بود.
    البته به غير از مواردي كه در سايت Asp.net هست. يعني به صورت خودموني و كاربردي تر.
    ممنون

  30. #30
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1385
    محل زندگی
    ایران - بروجرد
    پست
    723

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    نقل قول نوشته شده توسط el_abdollahi مشاهده تاپیک
    این هم از error
    برنامه من راحت کار میکرد ولی چند وقته این پیام رو مده و در برنامم از response,wrie استفاده نکردم

  31. #31
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    نقل قول نوشته شده توسط htmbarnamenevisl مشاهده تاپیک
    من اینکارایی که گفتید انجام دادم اما داخل این پوشه فایل dll نیست
    من از vs2005 استفاده میکنم
    دقیقا توی root اون پوشه نیست توی ساب فولدرهای اون پوشه هست دقیقا یادم نیست تو کدوم! با Windows Search پیداش کن.

  32. #32
    کاربر دائمی آواتار htmbarnamenevisl
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    شيراز
    پست
    123

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    میشه یه نفر لطف کنه و بعضی از کنترل های toolkit رو توضیح بده
    اینکه چه کاربردی دارند؟
    بعضیها رو توضیح دادید اما بقیه چی میشن

  33. #33

    نقل قول: نحوه استفاده از کنترل های ASP.NET AJAX**قسمت دوم**

    نقل قول نوشته شده توسط m.hamidreza مشاهده تاپیک
    کنترل هایی که با UpdatePanel سازگار نیستن عبارتند از :
    • TreeView & Menu
    • ASP.NET Web Parts Control
    • FileUpload که البته راه حل داره !
    • GridView & DetailsView البته زمانی که ویژگی EnableSortingAndPagingCallbacks به true ست شده باشه . در حالت پیش فرض false هست .
    • Login,PasswordRecovery,ChangePassword,CreateUserWi zard
    • Substitution
    • Validation Controls

    .
    جناب حميدرضا من از وليديشن كنترل ها در يك آپديت پنل استفاده كردم. اما به مشكلي بر نخوردم و اونها كارشون رو به خوبي انجام مي دن. خواستم ببينم اين عدم ناسازگاري كه گفتين درچه زمينه اي هست؟ و اگر بعدا براي من مشكل ساز ميشه تا از حالا يه فكري بكنم و جور ديگه اي فرمم رو استفاده كنم.؟
    پيشاپيش ممنون

  34. #34
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    37
    پست
    1,227

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    یک مقداری به اشتباه وارد کن ( یعنی بزار Validate کنه ) حالا اون مقدار رو اصلاح کن ببین چه اتفاقی می افته تا اینجا هیچ مشکلی به وجود نمیاد ، حالا دوباره مقدار اشتباه وارد کن ، و ببین چه اتفاقی رخ میده

  35. #35
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نقل قول: نحوه استفاده از کنترل های ASP.NET AJAX**قسمت دوم**

    نقل قول نوشته شده توسط msadgd مشاهده تاپیک
    جناب حميدرضا من از وليديشن كنترل ها در يك آپديت پنل استفاده كردم. اما به مشكلي بر نخوردم و اونها كارشون رو به خوبي انجام مي دن. خواستم ببينم اين عدم ناسازگاري كه گفتين درچه زمينه اي هست؟ و اگر بعدا براي من مشكل ساز ميشه تا از حالا يه فكري بكنم و جور ديگه اي فرمم رو استفاده كنم.؟
    پيشاپيش ممنون
    سری که درد نمیکنه رو که آدم دستمال نمی بنده!
    Update Panel + Validation Controls

  36. #36

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    نقل قول نوشته شده توسط mahdi_farhani مشاهده تاپیک
    یک مقداری به اشتباه وارد کن ( یعنی بزار Validate کنه ) حالا اون مقدار رو اصلاح کن ببین چه اتفاقی می افته تا اینجا هیچ مشکلی به وجود نمیاد ، حالا دوباره مقدار اشتباه وارد کن ، و ببین چه اتفاقی رخ میده
    Farhani جان عزيز اينجوريش رو امتحان نكرده بودم خيلي جالب بود. وقتي دومين بار اشتباه وارد مي كنيم ديگه وليديشن ها كار نمي كنند. اما من از يك Validation Summary استفاده كردم و Show message هم True هست. وقتي وليديشن ها درست كار نميكنند با زدن دكمه ، اين Summary فعال ميشه و پيغامهاي خطا رو نشون ميده و اجازه ادامه فعاليت نميده. چند بار امتحان كردم فكر كنم اينجوري يجورايي سرش گول ماليده بشه. درسته ؟
    اگه اينجوري هم باز يه جاي كار مشكل داره ممنون ميشم بگيد.

  37. #37

    Smile نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    نقل قول نوشته شده توسط msadgd مشاهده تاپیک
    Farhani جان عزيز اينجوريش رو امتحان نكرده بودم خيلي جالب بود. وقتي دومين بار اشتباه وارد مي كنيم ديگه وليديشن ها كار نمي كنند. اما من از يك Validation Summary استفاده كردم و Show message هم True هست. وقتي وليديشن ها درست كار نميكنند با زدن دكمه ، اين Summary فعال ميشه و پيغامهاي خطا رو نشون ميده و اجازه ادامه فعاليت نميده. چند بار امتحان كردم فكر كنم اينجوري يجورايي سرش گول ماليده بشه. درسته ؟
    اگه اينجوري هم باز يه جاي كار مشكل داره ممنون ميشم بگيد.
    دوست من من خیلی وقت پیش یه dll دانلود کرده بودم که این مشکل حل می کرد توی پروژه ای که گذاشتم روی سایت به کار بردم اسم dll ، هست validation وتوی فایل وب کانفیگ باید یه سری تنظیمات انجام بدی به نام TagMapping دقیقا لینک سایت خاطرم نیست اما توی پروژه خودم اونو بکار بردم

  38. #38
    کاربر دائمی آواتار article
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    اصفهان
    پست
    197

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    webconfigهمه کارهايي که گفتيد انجام دادم دوتا فايل ضميمه را که گفتيد به فايل اضافه کردم
    دستورات را به آخر صفحه وبم اضافه کردم
    <authentication mode="Windows"/>بعد از دستور
    <pages>کدهاي
    <controls>
    <add tagPrefix="asp" namespace="AjaxControls" assembly="AjaxControls"/>
    <add tagPrefix="ajaxToolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>
    </controls>
    </pages>
    را اضافه کردم اما همچنان پيغام

    Unable to create type 'ajaxToolkit:ModalPopupExtender'. Could not load file or assembly 'System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
    و

    Element 'ModalPopupExtender' is not a known element. This can occur if there is a compilation error in the Web site.
    ميدهد.
    ممنون ميشم اگه اين پيغام را پيگيري کنيد

  39. #39
    کاربر دائمی آواتار m.hamidreza
    تاریخ عضویت
    اسفند 1385
    محل زندگی
    کره زمین
    پست
    1,465

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    نقل قول نوشته شده توسط article مشاهده تاپیک
    webconfigهمه کارهايي که گفتيد انجام دادم دوتا فايل ضميمه را که گفتيد به فايل اضافه کردم
    کدوم دوتا فایل؟ dll ها؟ به کجا اضافه کردی؟
    AjaxToolkit رو نصب کردی؟

  40. #40

    نقل قول: **مقاله آموزشی **نحوه استفاده از کنترل های MS AJAX

    [RTL_INLINE]
    سلام
    من قبلا اين تاپيك رو چك مي كردم . ولي الان اينجا خبري نيست
    يه سوالي داشتم كه هر كدام از دوستان بتونن جواب بدن خيلي ممنون ميشم
    طبق معمول قراره يه provincecombo , citycombo داشته باشيم كه با استفاده از script پر بشن
    مرحله fill كردن به خوبي انجام ميشه اما وقتي مي خواد setIndex كنه مرتب citycombo رو با index صفر نمايش ميده و نميشه update اش كرد
    اگه كسي بتونه كمكم كنه خيلي ممنون ميشم

    [/RTL_INLINE]

    ----------------------------------------------------------------------- code comboha
    <asp:DropDownListID="cmbBirthProvince"runat="server"
    OnChange="CallGetCity(1,this.value)"Width="116px">
    <asp:ListItemValue="0">Please Select</asp:ListItem>
    <asp:ListItemValue="1">Province 1</asp:ListItem>
    <asp:ListItemValue="2">Province 2</asp:ListItem>
    </asp:DropDownList>


    <asp:DropDownListID="cmbBirthCity"runat="server"Width="114px">
    <asp:ListItemValue="0">-</asp:ListItem>
    </asp:DropDownList>


صفحه 1 از 2 12 آخرآخر

تاپیک های مشابه

  1. تکنیکی برای Ajax کردن این لینکدونی
    نوشته شده توسط Chabok در بخش ASP.NET Web Forms
    پاسخ: 4
    آخرین پست: پنج شنبه 28 خرداد 1388, 01:16 صبح
  2. نحوه استفاده از ajax در پروژه ای که ajax enable نیست
    نوشته شده توسط mp2009 در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: دوشنبه 16 مهر 1386, 09:04 صبح
  3. بازهم Ajax
    نوشته شده توسط cybercoder در بخش PHP
    پاسخ: 7
    آخرین پست: جمعه 09 شهریور 1386, 00:57 صبح
  4. مثالی از استفاده‌ی Ajax در Asp
    نوشته شده توسط hossein taghi zadeh در بخش Classic ASP
    پاسخ: 1
    آخرین پست: پنج شنبه 01 شهریور 1386, 02:16 صبح
  5. سایت مفید درباره asp.net ajax , ajax control toolkit
    نوشته شده توسط reza_62 در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: یک شنبه 14 مرداد 1386, 17:17 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •