آموزش Ajax > کنترل های ASP.Net Ajax > معرفی کنترل UpdateProgress
آشنایی با کنترل UpdateProgress :
از کنترل UpdateProgress ، برای نمایش یک نمایه تصویری یا یک پیام متنی ، که میزان
پیشرفت پروسه عملیات لود شدن و به روز رسانی صفحه را نشان می دهد ، استفاده می شود
.
شما می توانید ظاهر و محتویان کنترل UpdateProgress را به راحتی تعیین نمایید . نمونه
این کنترل را تاکنون زیاد مشاهده کرده اید . برای مثال هنگامی که صفحه در حال لود کردن
اطلاعات از یک منبع داده ای است ، یک ساعت دوار به کاربر نشان می دهد ، که عملیات در
حال انجام است و باید منتظر بماند .
برای جلوگیری از نمایش فوق سریع کنترل در زمانی که عملیات به روز رسانی صفحه بسیار
سریع است ، می توان یک مدت زمان تاخیری را به عنوان Delay برای نمایش کنترل در نظر
گرفت .
شما می توانید یک یا چند کنترل UpdateProgress را بر روی صفحه قرار دهید ، که هر کدام
مربوط به یک کنترل UpdateProgress باشند . یا اینکه یک کنترل UpdateProgress واحد را
برای چندین کنترل UpdatePannel به کار ببرید .
نحوه کار کنترل UpdateProgress :
کنترل UpdateProgress ، در هنگام اجرا بر روی صفحات وب ، به صورت یک تگ <div>
قرار می گیرد ، که بسته به اینکه کنترل UpdatePannel مربوط به آن ، در حال به روز رسانی
است یا خیر ، مخفی یا نمایان می شود .
در هنگام لود اولیه صفحه یا رفرش شدن کل صفحه ، این کنترل نمایش داده نخواهد شد .
اتصال یک کنترل UpdateProgress به یک کنترل UpdatePannel :
شما می توانید به وسیله خاصیت AssociatedUpdatePanelID کنترل UpdateProgress را به
یک کنترل UpdatePannel متصل کنید . هنگامی که عمل Postback یا رفرش شدن توسط کنترل
UpdatePannel انجام می شود ، کنترل UpdateProgress مرتبط با آن نمایش داده می شود .
اگر کنترل UpdateProgress را به هیچ کنترل UpdatePannel خاصی مرتبط نکنید ، با هر بار
Postback یا به روز رسانی ، آن کنترل در صفحه نمایش داده خواهد شد .
تعیین محتویات مورد نظر برای یک کنترل UpdateProgress :
می توانید تعیین کنید تا متن یا پیام خاصی توسط کنترل UpdateProgress در هنگام نمایش
، نشان داده شود . برای این منظور بایستی متن یا
کد HTML مورد نظر خود را درون تگ باز و بسته ProgressTemplate کنترل قرار دهید
. همانند مثال زیر :
|
کد
|
<asp:UpdateProgress ID="UpdateProgress1" runat="server">
<ProgressTemplate>
An update is in progress...
</ProgressTemplate>
</asp:UpdateProgress>
|
تعیین چگونگی نمایش محتویات کنترل :
هنگامی که مقدار خاصیت DynamicLayout کنترل UpdateProgress را بر روی true تنظیم نمایید
، کنترل در هنگام اجرا بر روی صفحه ، هیچ فضایی را اشغال نمی کند . در عوض ، صفحه به
صورت دینامیکی آن را در مواقع لازم نمایش خواهد دارد . برای پشتیبانی از نمایش دینامیک
، کنترل UpdateProgress بر روی صفحه در هنگام اجرا به صورت یک تگ <div> رندر
می شود ، که مقدار خاصیت dispaly آن برابر با none است .
اما هنگامی که مقدار خاصیت DynamicLayout روی false باشد ، کنترل UpdateProgress فضایی
را بر روی صفحه اشغال می کند ، حتی اگر مخفی باشد . در این حالت ، کنترل به صورت یک
تگ <div> رندر شده ، که مقدار خاصیت dispaly آن روی block و مقدار خاصیت visibility
اش روی hidden تنظیم شده است .
قرار دادن کنترل UpdateProgress بر روی صفحه :
می توانید کنترل UpdateProgress را درون یا بیرون از کنترل UpdatePannel قرار دهید
. یک کنترل UpdateProgress هر زمان که کنترل UpdatePannel مرتبط به آن ، در حال به
روز رسانی باشد ، نمایش داده می شود . حتی اگر درون کنترل UpdatePannel دیگری قرار
گرفته باشد .
تعیین اینکه چه زمانی کنترل UpdateProgress نمایش داده شود :
شما می توانید به صورت برنامه ریزی شده ، تعیین نمایید که چه زمانی کنترل UpdateProgress
نمایش داده شود . برای این منظور بایستی از رویدادهای beginRequest و endRequest در
جاوا اسکریپت استفاده نمایید . ( متعلق به کلاس PageRequestManager ) .
در رویداد beginRequest عنصر DOM
ای که جانشین کنترل UpdateProgress است را نمایش داده و در رویداد endRequest آن
را مخفی نمایید .
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه را با ما در میان بگذارید :