وبلاگ تخصصی آموزش کامپیوترودانلود نرم افزار (خداجون دوستت دارم)

آموزش و راه کارهای کامپیوتر -مقاله کامپیوتر-قالب -ویندوز XP- ویستا -رمز

وبلاگ تخصصی آموزش کامپیوترودانلود نرم افزار (خداجون دوستت دارم)

آموزش و راه کارهای کامپیوتر -مقاله کامپیوتر-قالب -ویندوز XP- ویستا -رمز

خاموش کردن خودکار رایانه بدون نیاز به نرم افزار

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

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

 

ادامه مطلب ...

معرفی سایت یا وبلاگ به موتورهای جستجو

برای اینکه آمار ساییتون بالا بره و مراجعه کنندگان زیادی اون رو مطالعه کنند باید سایت را به موتورهای جستجو معرفی نمایید.


ضمن اینکه اگه وبلاگ دارید مخصوصا در بلاگفا ، ابتدا باید در قسمت مدیریت بلاگ خود ، در قسمت درج در فهرست وبلاگها رفته و وبلاگتون رو ابتدا ثبت کنید. که شرایط خاص خودش رو داره .

و اما ثبت در 150 موتور جستجو:
http://www.searchengineoptimizationcompany.ca/tools/search-engine-submitter

ثبت آدرس در موتور جستجوی گوگل :

برای ثبت آدرس وبلاگ خود در موتور جستجوی گوگل ابتدا به آدرس زیر بروید :
http://www.google.com/addurl/?continue=/addurl

سپس در قسمت Url آدرس سایت یا وبلاگ خود و در قسمت Comment یه توضیح مختصر از سایتتون رو بنویسید . کدعکس رو هم وارد کنید و Add Url رو کلیک کنید .آدرس شما هم اکنون ثبت شد ولی یکی دو ماهی طول میکشه تا وارد موتور بشه

ثبت آدرس در موتور جستجوی یاهو :

برای ثبت آدرس وبلاگ خود در موتور جستجوی یاهو ابتدا به آدرس زیر بروید :
http://submit.search.yahoo.com/free/request
سپس با آیدی یاهوی خود وارد شوید . در صفحه ی بعد در قسمت Enter the Url for your Page آدرس وبلاگ یا سایت خود را وارد کرده و اینتر بزنید .

ثبت آدرس در موتور جستجوی MSN :


برای ثبت آدرس وبلاگ خود در موتور جستجوی MSN ابتدا به آدرس زیر بروید :
http://beta.search.msn.com/docs/submit.aspx

در مکان مشخص کدعکس رو وارد کنید و در قسمت Type the URL of your homepage آدرس وبلاگ یا سایت خود را وارد کرده و Submit Url را کلیک کنید .

توجه داشته باشید که پس از وارد کردن Url شما در این موتورها مدتی طول میکشه تا آدرس شما در موتور ثبت بشه .
امیدوارم که آموزش های بنده بتونه در یه حد کمی هم که شده به شما کمک کنه .

ثبت دامین در موتورهای جستجوی Google, yahoo! یا bing

» برای ثبت دامین در هر یک از موتورهای جستجوی Google, yahoo! یا bing ، روی دکمه مشخص شده کلیک نموده و طبق راهنمایی آمده دامین مورد نظر خود را ثبت نمایید.
دقت کنید آدرس دامین را به صورت کامل و صحیح وارد نمایید.
 
ثبت دامین در موتور جستجوی گوگل (Google): » در قسمت Url آدرس سایت یا وبلاگ خود را بنویسید.
» در قسمت Comment توضیح مختصری از سایت یا وبلاگ خود بنویسید.
» در آخرین قسمت کد عکس را وارد کرده و Add Url کنید.
 
ثبت دامین در موتور جستجوی یاهو (!Yahoo): » روی عبارت Submit a Website or Webpage کلیک کنید. آدرس وب سایت مورد نظر را وارد کرده و دکمه ثبت را بزنید. در مرحله بعد ID خود در یاهو و رمز عبور را وارد کرده تا مراحل ثبت کامل گردد.
 
ثبت دامین در موتور جستجوی جدید مایکروسافت، bing:  » قبل از ثبت دامین، لازم است که در Hotmail یا Live اکانت داشته باشید.پس از وارد کردن ID و رمز وارد صفحه ثبت دامین در موتور جستحوی bing می شوید. در این صفحه فیلدهای مشخص شده را پر کرده و دکمه ثبت را بزنید.
» توجه
·          معرفی کامل مطالب سایت یا وبلاگ شما توسط موتورهای جستجو تا دو ماه پس از معرفی آدرس وب سایت یا وبلاگ به طول می انجامد بنابراین برای مشاهده مطالب وبلاگ در نتایج جستجو مدتی زمان لازم است.
·          در مورد وبلاگ: برای کسب موقعیت بهتر در موتورهای جستجو بهتر است زمانی اقدام به معرفی وبلاگ خود کنید که وبلاگ شما حداقل دارای پنج یا ده مطلب باشد . بسیاری از اوقات وبلاگهای بدون محتوا توسط موتورهای جستجو ایندکس نشده و یا از نتایج جستجو حذف می شوند.
·          از دوستانتان که دارای وبلاگ یا وب سایت هستند بخواهید که به وبلاگ شما لینک بدهند و شما نیز میتوانید متقابلاً اینکار را برای آنها انجام دهید. تعداد لینک بالاتر به کسب موقعیت بهتر در نتایج موتورهای جستجوگر کمک میکند.
·          از معرفی بی دلیل و متعدد سایت یا وبلاگ خود به موتورهای جستجوگر پرهیز کنید اینکار هیچ کمکی به شما نمی کند. در عین حال اگر پس از 5 ماه وبلاگ شما در نتایج جستجو ظاهر نشد میتوانید مجددا اقدام به معرفی وب سایت یا وبلاگ خود کنید

دوپینگ اکس‌پی‌

اشاره : هر زمان که درباره مدیریت منبع تغذیه در ویندوز صحبت می‌شود، ناگهان به یاد مدت زمان کارایی نوت‌بوک می‌افتیم. مسلماً مدیریت برق مصرفی در نوت‌بوک اهمیت بسیار زیادی دارد. ولی باید گفت که مدیریت مصرف برق در کامپیوترهای رومیزی نیز از اهمیت بسیار بالایی برخوردار است. مخصوصاً اگر به طور مداوم و منظم از کامپیوتر خود استفاده نکنید. فارغ از این‌که اکس‌پی را در نوت‌بوک استفاده می‌کنید یا در کامپیوترهای رومیزی، اکس‌پی ابزاری را در اختیار شما قرار می‌دهد تا بتوانید مصرف انرژی را مدیریت کنید و مدت زیادی از باتری نوت‌بوک خود استفاده کنید و مصرف انرژی کامپیوتر خود را نیز بهینه سازید.

ادامه مطلب ...

DNS چیست؟

شایدتا به حال اصطلاح DNS را بارها شنیده باشید، کسانی که وبگرد حرفه ای هستند، حتماDNS را بارها دیده و یا شنیده اند. DNS مخفف Domain Name Server"" است.

وقتی شما می خواهید وارد سایتی بشوید، باید آدرسweb server خود را در web browser خود وارد کنید.یک روش برای مشخص کردن server ، دانستن IP آدرس آن است. مثلا 63.72.51.85=www.ciwcertified.com.. اما به حر حال همه کاربر ها ترجیح می دهند تا به جای استفاده از این اعداد و ارقام از domain names استفاده کنند، چرا که استفاده کردن و به خاطر سپردن آنها به مراتب راحت تر است.
در حقیقت DNS، IP addresses را به اسامی مشخص و ساده ترجمه می کند. مثلا وب سرور سایت yahoo می تواند 65.20.35.79 باشد.( اعداد IP صرفا برای مثال است.) که می توان از صریق آدرس http://www.yahoo.com هم به آن دسترسی پیدا کرد.

هم domain name و هم IP address، کاربر را به یک وب سرور مشخص هدایت می کند، اما domain name، هم برای استفاده، و هم برای به خاطر سپردن به مراتب راحت تر است. بدون DNS کاربرها مجبور هستند برای وارد شدن به هر بخشی از اینترنت از اعداد خسته کننده IP address استفاده کنند.

یکی از راه های به خاطر سپردن domain name، یادگیری ساختار آن است. چیزی که بسیار مهم است انتخاب domain name است. شرکت های تجاری دقت بسیار زیادی در انتخاب domain name خود می می کنند، هر چه انتخاب domain name با دقت بیشتری صورت بگیرد امکان ارتباط راحت تر و سریع تر مخاطبین را بیشتر فراهم می کند. هر domain name هم منحصر به فرد است و هیچ دو فرد حقوقی و یا حقیقی هم نمی توانند از 2 domain name واحد و شبیه به هم استقاده کنند.

هر domain name از حروف و یا اعدادی تشکیل شده است که به وسیله نقطه از هم جدا می شوند.

مثلا http://www.yahoo.com را در نظر بگیرید،
قسمت www که server(host) name است.
Yahoo قسمت registered company domain name
و قسمت com یا همان domain category یا Top level Domain

نویسنده : احسان سلطانی

آموزش نصب ویندوز در 7 دقیقه

 برای این کار شما به کمک CD Writer و نرم افزار Nero Burning Rom یک فایل بک آپ از تمام فایلهای ویندوز با پسوند exe می سازید به نحوی که بعدا میتوانید به سرعت با اجرای فایل exe ویندوزی آماده کار خلق نمایید.
ادامه مطلب ...

روش های فعال کردن folder option / رجیستری / task manger

از قرار معلوم این مشکلات در بین کاربران زیاد شده و با اینکه جوابهای مختلفی داده شده دوباره سوال میشه این تاپیک رو زدم که کل مطالب این بخشها را یکجا بگم

در کل غیر فعال شدن این موارد به دو علت میتونه باشه : 1- آلوده به ویروس یا تروجان یا بد افزارها و کرمهای رایانه ای 2- مدیر سیستم به خواست خودش این گزینه ها را غیرفعال کرده

ادامه مطلب ...

اصول برنامه‌نویسی در چهارچوب ‌WebPart

 

 
اشاره :

با نگاهی به اینترنت مجموعه‌ای از سایت‌هایی با عملکرد استثنایی را می‌یابید که چیدمان آن‌ها کاملاً مطابق سلیقه شما است. با ورود به این سایت‌ها احساس می‌کنید در مقابل نقشه‌ای ایستاده‌اید که به شما می‌گوید: <شما اینجا ایستاده‌اید.> این واقعیتی بسیار شگفت‌انگیز است. چگونه ظاهر این سایت‌ها با خصوصیات و علایق شما کاملاً در تناسب است. چنین پیشرفتی واقعاً جالب است. این سطح از پیشرفت با فعالیت برنامه‌نویسان آزاد و تولید چندین چهارچوب پیشرفته، ایجاد می‌شود. نکته جذاب دیگر، سطح قابلیت استفاده مجدد در اغلب این سایت‌ها است. برای مثال، همه سایت‌ها دارای سرتیتر(Header) و ناحیه درج تبلیغات(Banner) هستند. بعضی از سایت‌ها دارای تقویم هستند و بعضی دیگر برنامه‌هایی شبیهForum ارائه می‌دهندForum) .ها، میزگردهای مستندی به صورت ارسال پیام، سؤال و نظرات کتبی هستند که توسط سایر افراد عضو درForum پاسخ کتبی آن‌ها تولید می‌شود.) این ساختارهای انتزاعی یاWidget ها درچهارچوب‌های برنامه‌نویسی مختلف به روش‌های متفاوتی تولید می‌شوند. در حقیقت کل محصول بر مبنای مفاهیم عرضه‌شده توسطWidget ها تولید می‌شود و تنها نام آن‌ها در محیط‌های مختلف متفاوت است.


یکی از محصولات نسبتاً محبوب در زمینه برنامه‌نویسی با استفاده از Widgetها، با نام SharePiont Portal Server2003 مطرح است که Widgetهای قابل‌استفاده مجدد خود را WebPart نامیده است.

شرکت مایکروسافت در ASP.NET2.0 کاملاً از WebPartها حمایت می‌کند و جای تعجب ندارد که برنامه MicroSoft Office SharePoint Server2007 به همراه مجموعه Office عرضه شده ‌است.

در این مقاله اصول پایه مطرح در چهارچوب‌های WebPart مورد بررسی قرار می‌گیرد. می‌توان این مقاله را به عنوان پایه‌ای برای مباحث پیشرفته‌تر نظیر چگونگی پشتیبانی از WebPartها در برنامه MOSS2007 در نظر گرفت.

مؤلفه‌های اصلی چهارچوب WebPart در ASP.NET2.0

شکل 1

قبل از بررسی یک صفحه ساده وب که با استفاده از WebPartها طراحی شده است، ابتدا مهم‌ترین عناصر قابل استفاده در چهارچوب کاریNET. را مورد بررسی قرار می‌دهیم که برای تولید این صفحه استفاده شده‌اند:

- ‌WebPartها: WebPart، یک Widget با قابلیت استفاده مجدد است که در صفحات وب به کار می‌رود. کاربر می‌تواند WebPart را به صفحات خود بیفزاید، آن را متناسب با نیاز خود تنظیم کند یا حتی رابطه‌هایی را بین این WebPartها تعریف کند.


شکل 2

پیش از هر چیز باید دانست که WebPart در ASP.NET2.0 از کلاسSystem.Web.UI.WebControls.Controls.WebParts.WebPart مشتق شده‌است. یک نمونه خوب، Widgetای است که ترافیک را نمایش می‌دهد.

کاربر نهایی می‌تواند طوری آن را تنظیم‌کند که اطلاعات مربوط به بزرگراه‌های خاصی را نمایش دهد و از طریق ارتباط با یک WebPart دیگر بزرگراه‌های دیگری را تعیین کند و کاربر با کلیک روی آن‌ها، آخرین اطلاعات ترافیکی مربوط به آن‌ها را مشاهده کند. تولید چنین سیستمی در ASP.NET2.0 کار زیاد سختی نیست.

- WebPartManager: این کنترل به عنوان مهم‌ترین سیستم بازرسی برای WebPartها در ASP.NET2.0 مطرح است. هر صفحه باید فقط شامل یک WebPartManager باشد و این عنصر مسئول همه عملکردها، رخدادها، و سفارشی‌سازی‌های مربوط به WebPart‌های مختلف موجود در آن صفحه است و آن‌ها را مدیریت می‌کند.
 
همچنین می‌توان WebPartManager را به حالت (Mode)های مختلف تنظیم کرد. برای مثال، اگر طراح WebPartManager را در حالت Catalogue تنظیم کند، می‌تواند WebPartهای مورد نظر برای صفحه خود را از میان مجموعه‌ای از WebPartها انتخاب کند.

شکل 3

Communication Mode، یکی دیگر از حالت‌ها برای تنظیم صفحه است. در صورت انتخاب این حالت می‌توان بین WebPartهای مختلف مسیرهای ارتباطی متعددی تعریف کرد.

- Various Zones: به نواحی مختلف صفحهZone  می‌گویند. پیاده‌سازی این‌ها از طریق کنترل‌های سرور زیر صورت می‌گیرد که به همراه چهارچوب ارائه می‌شوند:

شکل 4

- WebPartZone: یک WebPartZone عبارت است از کنترلی که ناحیه‌ای از صفحه را تعیین می‌کند تا آن ناحیه میزبانی یک یا چند WebPart را برعهده گیرد. همچنین WebPartZone کنترل نحوه نمایش یک WebPart را برعهده دارد.
 
همچنین هر کنترلی که از کلاس WebPart به ارث نرسیده باشد، می‌تواند به صورت یک WebPart ظاهر گردد و در یک WebPartZone ساکن شود. این کار از طریق کلاس Generic طراحی شده برای WebPartها انجام می‌شود که از کلاس پایه WebPart به ارث می‌رسد. البته با انجام این کار، از بخشی از توانایی‌ها و عملکردهای کلاس WebPart محروم ‌می‌شوید.

CatalogtueZone: عبارت است از فهرست یا کاتالوگی که طراح می‌تواند از میان گزینه‌های آن موارد مورد نظر خود را انتخاب کرد. این کنترل سرور تعداد کنترل‌های CatalogueParts را در خود نگه می‌دارد و این کنترل‌ها نیز به نوبه خود WebPartهایی را نگه‌ می‌دارد که تا کنون به سایت افزوده شده‌اند و می‌توان آن‌ها را به صفحات وب مختلف موجود در سایت افزود. کاربر می‌تواند WebPartها را از کاتالوگ بردارد و به چندین WebPartZone موجود در یک صفحه بیفزاید.

شکل 5

سه نوع CatalogueParts وجود دارد که عبارتند از: DeclarativeCatalogPart ،PageCatalogPart وImportCatalogPart.

EditorZone: ناحیه‌ای از صفحه است که از کاربر نهایی می‌خواهد WebPart را بنابر نیاز خود سفارشی کند. همچنین می‌توان یک WebPart را در حالت اشتراکی (Share Mode) سفارشی کرد. در این صورت یک مدیر می‌تواند WebPart را سفارشی کند و سایر کاربران می‌توانند آن را مشاهده کنند، ولی مجاز به سفارشی کردن آن نیستند.

شکل 6

ConnectionZone: این ناحیه صفحه از کاربر نهایی می‌خواهد با نحوه تبادل اطلاعات بین WebPartهای مختلف قرار گرفته در یک صفحه را تعیین کند. برای مثال، می‌توانید یک خواننده اطلاعات نوع RSS را بسازید. در این حالت یکی از WebPartها، OPMLهای مربوط به کاربران را نگهداری می‌کند و دیگری RSS را متناسب با سلیقه مشترکان تغییر می‌دهد.

ارتباط بین این‌دو WebPart به این صورت است که WebPart از نوع OPML که ردیف‌های URL مربوط به RSS را تهیه می‌کند و سپس WebPart خواننده RSS آن ردیف را می‌گیرد، مورد استفاده قرار می‌دهد و آن را به شکلی مناسب نمایش می‌دهد.

از آنجا که این مثال یک برنامه ساده از نوع ASP.NET2.0 است، می‌توانید این WebPart را به همراه الگوهای Atlas نیز به کار ببرید (الگوهایی در محیط NET. برای پیاده‌سازی آسان فناوری ای‌جکس).

از جمله این الگوها می‌توان به UpdatePanel یا کنترل ثانویه‌ای مانند telerik AJAX Panel اشاره کرد. حتی می‌توانید PostBackها را با CallBack جایگزین کنید و برای این کار تقریباً نیاز به نوشتن هیچ‌گونه کدی وجود ندارد (در PostBack با اعمال هر گونه رخدادی توسط کاربر و ایجاد هرگونه تغییری روی کنترل‌ها باید کل صفحه وب نوسازی شود، ولی در CallBack این تغییرات توسط کدهای جاوا اسکریپت مدیریت می‌شود و به این ترتیب ارسال اطلاعات به سرور و دریافت داده، بدون نیاز به نوسازی کل صفحه انجام می‌شود).

تولید یک WebPart ساده‌

شکل 7

حال که با عناصر اصلی طراحی صفحات وب در ASP.NET2.0 آشنا شدید، زمان آن فرا رسیده است تا شروع به کار کنید و اولین WebPart خود را ایجاد کنید.

می‌توانید هر کنترلی را با استفاده از کلاس Generic WebPart به این نوع تبدیل کنید، اما چنین WebPartی یک مورد واقعی نخواهد بود؛ زیرا یک WebPart واقعی باید از کلاس پایه System.Web.UI.WebParts.WebPart مشتق شده باشد. کد یک WebPart ساده که فقط قرار است یک خط کد را نمایش دهد، به صورت زیر است:




                                                                                             public class SimpleWebPart : WebPart  
                                                                                                                                             }
                                                                            ;"!private string displayText = "Hello World
                                                                        [(WebBrowsable (true),(Personalizable (true]
                                                                                                          public string DisplayText           
                                                                                                                                            }   
                                                                                                      {;get{return displayText
                                                                                                    {;set{displayText = value
                                                                                                                                           {
                                          (protected override void Render(System.Web.UI.HtmlTextWriter writer
                                                                                                                                            }   
                                                                                                      (writer.Write (displayText
                                                                                                                                           {         
                                                                                                                                              {‌

شکل 8

شکل 9

فعلاً در مورد ویژگی‌های قابلیت جست‌وجو در وب و امکان سفارشی‌سازی صفحات خود نگران نباشید. نحوه ایجاد این امکانات به زودی بررسی می‌شود. فعلاً کافی است بدانید که این یک کنترل ساده سرور است که جعبه نمایش‌متن (DisplayText) را تنظیم می‌کند. سؤال دومی هم که باید حتماً بررسی شود، این است: چگونه می‌توانم از این WebPart استفاده کنم؟


نحوه استفاده از یک WebPart 

یک سایت ساده را با استفاده از ASP.NET2.0 ایجاد کنید. سپس به کلاس کتابخانه‌ای که WebPart تولید شده توسط شما در آن قرار دارد، یک رابط ارجاع (Reference) اضافه کنید. مراحل زیر را روی کد مربوط به فایل تولید شده با نام Default.aspx اجرا کنید.

- از ناحیه ToolBox یک WebPartManager را بردارید و روی صفحه قرار دهید (Drop & Drag) .

- دو WebPartZone را نیز به روش کشیدن و انداختن از ToolBox به صفحه اضافه کنید (این دو را به روشی که علاقه دارید، ویرایش کنید). WebPartZoneها من برای ساده کردن کار مطابق با شکل 1 که در محیط design view  قابل‌مشاهده است، ویرایش شده است.

- حال WebPart ساده‌ای را که در مرحله قبل نوشته‌اید، به ناحیه WebPartZone1 اضافه کنید. بعد از انجام این کار صفحه طراحی‌شده در محیط design view به شکل 2 است.

- حالا این صفحه را اجرا کنید. باید WebPart شما به درستی در مرورگر نمایش‌داده شود. همچنین یک منوی مناسب در کنار WebPartZone نمایش داده می‌شود. وقتی گزینه Minimize را انتخاب کنید (مطابق شکل3)، پنجره تولید شده توسط WebPart به راحتی بسته می‌شود.

‌کد ایجاد شده تا این لحظه در فهرست زیر آمده و بسیار ساده است:

                                                                                             <"form id="form1" runat="server>
                                                                                                                                       


                        <"asp:WebPartManager  ID="/img/2006/07/WebPartManager1" runat="server>
                                                                                                       
                                    <"asp:WebPartZone ID="/img/2006/07/WebPartZone1" runat="server>
                                                                                                       
                                                         <"cc1:simplewebpart id="SimpleWebPart1>
                                                                                                                                                  
                                                                                                         
                                 <"asp:WebPartZone ID="/img/2006/07/WebPartZone2" runat="server>
                                                                                                          
                                                                                                                                    

                                                                                                                                 


همچنین توجه داشته باشید که با اولین اجرای این وب‌سایت، پایگاه‌داده SQL Express با نام ASPNERT.MDF به صورت شکل 4 نمایش داده می‌شود.

علت این نمایش از آنجا ناشی می‌شود که چهارچوب WebPart مانند بسیاری از بلاک‌های اجرایی مهم ASP.NET2.0 به صورت پیش‌فرض از پایگاه ‌داده SQL Express استفاده می‌کند.

اگر WebPart خود را به صورت سفارشی درآورید، آن را بین WebPartZoneهای مختلف جابه‌جا کنید یا هرگونه سفارشی‌سازی را که مستلزم بازنویسی URLها یا توابع API عضو یا هر کار دیگری است، انجام دهید.

اطلاعات مربوط به این تغییرات به صورت پیش‌فرض در SQL Express database ‌ذخیره می‌شود. البته این فرآیند به راحتی با استفاده از provider model و تغییرات کمی در web.config قابل تغییر است.

شما می‌توانید با استفاده از چهارچوب WebPart کارهای زیادی انجام دهید. بررسی این کارها کاملاً از حوصله این مقاله خارج است. تا کنون با بسیاری از عملکردهای پایه‌ای آشنا شده‌اید. حال ببینیم باید چه تغییراتی در کد برنامه ایجاد کنیم تا کاربر بتواند متن WebPart را تغییر دهد یا WebPart را از WebPartZone1 به WebPartZone2 انتقال دهد.

ایجاد کمی تغییرات جالب در WebPart شما

می‌توانید به کمک WebPartZoneای که در صفحه قرار داده‌اید، خود WebPart و در نتیجه صفحه‌ای که WebpartZone در آن قرار گرفته است را روی DisplayModeهای مختلف تنظیم کنید.

شکل 10

این DisplayModeها یا حالات نمایش را به شما امکان می‌دهد کارهای مختلفی را روی WebPartها انجام دهید. از جمله: آن‌ها را جابه‌جا یا ویرایش کنید، بین آن‌ها مسیرهای ارتباطی تعریف نمایید یا آن‌که فقط صفحه را مشاهده کنید.

با اجرای مراحل زیر تغییراتی را روی همان Default.aspxای که با آن کار می‌کردید ایجاد کنید:

- یک CatalogZone را به صفحه اضافه کنید. در داخل این CatalogZone یک الگوی ZoneTemplate ایجاد کنید، سپس یک DeclarativeCatalogPart و یک PageCatalogPart را داخل آن قرار دهید.

حال یک WebPartsTemplate را به DeclarativeCatalogPart اضافه کنید و سپس کد تعریف‌کننده cc1:simplewebpart را از WebPart1 به آن انتقال دهید. کد نهایی باید به صورت زیر باشد:

                                                                                                                     
                                                                                       
                                                                 "asp:PageCatalogPart ID="PageCatalogPart1>
                                                                                                                                                           
                                                                                                   

- یک EditorZone را نیز به صفحه اضافه کنید. در داخل این EditorZone یک ZoneTemplate ایجاد کنید و یک کنترل asp:PropertyGridEditorPart را از ToolBox به آن اضافه نمایید.

این asp:PropertyGridEditorPart وظیفه دارد که خصوصیات Public مربوط به WebPart را که از طریق true بودن صفت WebBrowsable شناسایی می‌شوند را بیابد و یک رابط‌کاربری ساده را در اختیار شما قرار دهد تا بتوانید مقدار آن صفت یا ویژگی را تغییر دهید. باید EditorZone شما شبیه قطعه کد زیر باشد:

                                                                        <"asp:EditorZone ID="EditorZone1" runat="server>
                                                                                                      
                                                                           asp:PropertyGridEditorPart>
                                                                                                                                        
                                                                                                            

حالا باید برای تنظیم حالت‌‌نمایش (DisplayMode) مربوط به WebPartManager کمی کدنویسی کنید تا به این ترتیب یکی از حالت‌های Edit ،Catalogue یا Browse را انتخاب کرده باشید.

                                                                                                                                       

                                                                                      " Edit_Click? asp:LinkButton>Edit                                                                                "asp:LinkButton ID="Catalog" runat="server>
                                                                        Catalog                                                                                "asp:LinkButton ID="Browse" runat="server>
                                                                              Browse
همچنین مدیر رخداد OnClick را برای کد سه دکمه ایجاد شده در کد فوق را با استفاده از کد زیر تولید کنید:

                                                                       (Protected void Edit_Click(object sender,EventArgs e
                                                                                                                                                }
                                       ;WebPartManager1.DisplayMode=WevPartManager.EditDisplayMode
                                                                                                                                                {
                                                                 (Protected void Catalog_Click(object sender,EventArgs e
                                                                                                                                                }
                                 ;WebPartManager1.DisplayMode=WevPartManager.CatalogDisplayMode
                                                                                                                                               {
                                                                 (Protected void Browse_Click(object sender,EventArgs e
                                                                                                                                               }
                                  ;WebPartManager1.DisplayMode=WevPartManager.BrowseDisplayMode
                                                                                                                                              {

- اکنون همه کارهای لازم را انجام داده‌اید. حال WebApplication خود را اجرا کنید تا رابط کاربری شبیه شکل 5 را مشاهده کنید.

- با کلیک روی دکمه «Catalogue»، رابط کاربری ناگهان تغییر می‌کند و شکل6 نمایش داده می‌‌شود.
حالا کادر علامت کنار عبارت «Untitled» را تیک بزنید و سپس روی دکمه «Add» در زیر آن کلیک کنید. با انجام این کار، یک نمونه از ebPart به WebPartZone1 فزوده می‌شود. شما می‌توانید از طریق خود WebPart یا از طریق CatalogueZone، نام با معنی‌تری را برای WebPart خود انتخاب کنید.
 

شکل 11

توجه داشته باشید که WebPart اکنون به WebPartZone1 افزوده شده است. می‌توانید به روش نشان داده شده در شکل زیر WebPart را به روش DragِDrop از WebPartZone1 به WebPartZone2 انتقال دهید.

توجه: با استفاده از مرورگر IE می‌توان به سادگی از خاصیت کشیدن و انداختن استفاده کرد. برای داشتن این خاصیت در مرورگر فایرفاکس باید از Atlas استفاده کرد.

- حالا روی Browse کلیک کنید. آنچه مشاهده می‌کنید باید مشابه با شکل 8 باشد:
فرض می‌کنیم که این تصویری است که بعد از ویرایش توسط شما برای کاربر نهایی نمایش داده خواهد ‌شد.

اکنون حالت نمایش Catalogue را دوباره انتخاب کنید و یک نمونه دیگر از WebPart را به WebPartZone1 اضافه کنید. روی Edit کلیک کنید و این‌بار برای Edit، مطابق شکل 9 مورد Edit را که در WebPartZone1 قرار گرفته است، انتخاب کنید.

- اکنون رابط کاربری که در اختیار شما قرار گرفته است، به شما امکان می‌دهد متن نوشته شده در Displaytext  مربوط به PropertyGridEditorPart همانند شکل 10 ویرایش کنید.

- متن را به «!Hello Mars» تغییر دهید و روی OK کلیک کنید. سپس دوباره روی Browse کلیک کنید. کاربر می‌تواند ویژگی‌های WebPart را سفارشی کند؛ زیرا صفت Personalizable آن با مقدار true ست شده است. در شکل 11، شکل سفارشی‌شده  WebPart توسط شما نمایش داده شده است.

چهارچوب ASP.NET2.0؛ توانمندی و انعطاف‌

با کمی کد توانستیم یک چهارچوب را برای یک Portal یا Widget آماده‌به‌کار طراحی کنیم. چهارچوب طراحی‌شده به نحو غیرقابل باوری انعطاف‌پذیر است. باید اعتراف کرد که آنچه شما تولید کرده‌اید نه جذابیت زیادی دارد و نه عملکرد بالایی دارد، اما می‌توانید این مشکلات را به سادگی و با استفاده از Stylesheetها یا WebPartهای پیچیده‌تر برطرف کنید.