مشاهده نسخه کامل
: مشکل در طراحی کنترل وب
سلام
من دارم یه کنترل طراحی می کنم که توی اون نیاز دارم چیزایی که بین تگ شروع و پایان تعریف کنترلم موقع استفاده قرار می گیره رو بفهمم مثلا :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
توی این مثال می خوام از داخل کنترل وب عبارت salam رو که بین تگ شروع و پایان قرار گرفته رو بفهمم .
چجوری می تونم این کارو بکنم ؟
سلام
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کسی در این مورد چیزی نمی دونه ؟
_H2_ عزیز ممنون . درست کار کرد ( البته منظور من از کنترل وب همین فایلهای ascx. بود که توی خود وب سایت می سازیم نه Web Control Library ولی مهم نیست ، مهم درست کار کردنشه که خدا رو شکر کار کرد)
اما یه سؤال دیگه :
من می خوام بین تگ شروع و پایان محتوای دو قسمت رو مشخص کنم (یکی عنوان و یکی هم متن اصلی) مثلا کنترل DataList رو فرض کنید که میشه این طوری تعریفش کرد :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
منم به همچین قابلیتی نیاز نیاز دارم
میشه منو راهنمایی کنید ؟
سلام
برای اینکار کافی است property هایی برای استفاده از واسط System.Web.UI.ITemplate در کدتان مستقر کنید.
نمونه کد:
msdn.microsoft.com/en-us/library/system.web.ui.itemplate.aspx
سلام
برای اینکار کافی است property هایی برای استفاده از واسط System.Web.UI.ITemplate در کدتان مستقر کنید.
نمونه کد:
msdn.microsoft.com/en-us/library/system.web.ui.itemplate.aspx
من به این آدرس رفتم و برنامه ی نمونه رو هم گرفتم ولی اصلا کار نکرد . شما قبلا این کار رو کردید ؟
سلام
شما قبلا این کار رو کردید ؟
گمانم احتمالاً یک چیزهای اندکی از ASP.Net و امکاناتش بلد هستم و کار کردم !
من به این آدرس رفتم و برنامه ی نمونه رو هم گرفتم ولی اصلا کار نکرد
یعنی کدی مثل این نوشتید ولی کار نکرد !
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
_H2_ جان شما دیگه شدی فرشته نجات من
دیگه از بس توی MSDN و اینترنت دنبال نمونه کد برای ITemplate گشتم و چیزای عجیب و غریب و پیچیده پیدا کردم که هیچ کدوم کار نکرد (یا بهتر بگم ،من نتونستم ازشون استفاده کنم) داشتم به دیار باقی می شتافتم !
دمت گرم کد شما کار کرد اما اولا یه نکته ، ثانیا یه سؤال دیگه :
نکته : برای این که این کد کد کنه باید ParseChildren کلاس True باشه که شما در جواب سؤال اول بنده گفته بودید که باید False باشه که البته درمورد اون سؤال درست بود
سؤال : من از کنترلم توی DataList استفاده می کنم و نیاز دارم که به صورت <%("Eval("Field #%> به فیلدهای دیتابیس دسترسی داشته باشم (از داخل کنترلم) یعنی :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اینو چجوری می تونم انجام بدم؟
ممنون
سلام
برای این که این کد کد کنه باید ParseChildren کلاس True باشه که شما در جواب سؤال اول بنده گفته بودید که باید False باشه که البته درمورد اون سؤال درست بود
تعریف ParseChildren برای کدی که در پست 7 برایتان نوشتم بی تاثیر است، اگر امتحان عملی کنید متوجه خواهید شد.
اینو چجوری می تونم انجام بدم؟
قادتاً این کار باید خودکار انجام شود و کد کاری خاصی از سوی شما نیاز ندارد، امتحان کنید.
موفق باشید.
تعریف ParseChildren برای کدی که در پست 7 برایتان نوشتم بی تاثیر است، اگر امتحان عملی کنید متوجه خواهید شد.
حرف شما درسته ولی منظور من این بود که این دو تا کار (پست 3 و پست 7) با هم قابل انجام نیستند
قادتاً این کار باید خودکار انجام شود و کد کاری خاصی از سوی شما نیاز ندارد، امتحان کنید.
من اول امتحان کردم بعد پست زدم
وقتی که داخل کنترل از Eval استفاده می کنم فکر می کنه که باید مقداری رو از توی کنترل برگردونه نه از توی DataList.
یعنی دسترسی به DataList از توی کنترل امکان نداره ! شما امتحان کنید ...
البته اگه خواستید من کنترلی رو که طراحی کردم میذارم اینجا تا ببینید چی میگم
اینم کنترلی که طراحی کردم با یه برنامه نمونه (لینک مستقیم ، حجم : 45 کیلوبایت) :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام
جواب شما را به تاخیر انداختم تا شاید وقت کنم و برای راه حل ساده جستجویی در سایت مایکروسافت انجام دهم ولی متاسفانه وقت نکردم.
=====
من خودم هر وقت در Bind های پیچیده در وب گیر میکنم از روش زیر مشکلم را حل میکنم و همیشه جواب داده...
شما یک حالت تودرتویی دارید ...
راه حل فعلی شما که مشکلتان را حل خواهد کرد ان است که از رویداد ItemDataBound کنترلر بالاسری (DataList شما) استفاده کنید و سطر جاری اطلاعات را از e.Item.DataItem دستی تحویل نمونه کنترلر خودتان در همان سطر بدهید.
(
با کمک کدنویسی رویداد ItemDataBound میتوان حالات پیچیده را با کد سفارشی و دستی حل و فصل کرد.
کمی کدنویسی دارد ولی در حالات خاص خوب جواب میدهد.
)
موفق باشید.
از راهنماییتون ممنون
اما چون من به این کنترل خیلی نیاز دارم و جاهای خیلی زیادی ازش استفاده می کنم ، به نظر عاقلانه نمی یاد که از این روش استفاده کنم . فکر کنم بهتره که هرجایی که نیازش داشتم کد HTML سازندش رو کپی و پیست کنم که هیچ نیازی به تغییر یا کد نویسی مجدد نداره
بازم از اینکه برای سؤال من وقت گذاشتید تشکر می کنم
vBulletin , Copyright ©2000-2024, Jelsoft Enterprises Ltd.