PDA

View Full Version : سوال: ساخت کاستوم کنترل



faridnoz
شنبه 19 اسفند 1391, 16:42 عصر
با سلام خدمت اساتید و دوستان گرامی
می خواستم در mvc کاستوم کنترل بسازم ولی متصفانه مطلب قابل فهمی پیدا نکردم
اساتید لطف کنن توضیحی در مورد ساخت کاستوم کنترل بدن
با تشکر

Saeed_m_Farid
شنبه 19 اسفند 1391, 17:29 عصر
در MVC بصورت پیش فرض چیزی بنام کنترل نداریم و در موتور Razor کلآً مفهوم کنترل بیمعنی هست، اگه میخواین یک کنترل بندازین روی فرم و بعد با کلیک روی اون به رخدادها و خواصش دسترسی پیدا کنید و ... باید برید سراغ پروژه های وب فرم ASPX (موتور ASPX در MVC منظورم نیست، پروژه های وب فرمی رو میگم)؛ به این نوع برنامه نویسی میگن The Smart UI Anti-Pattern که همونطورکه از آنتی مشخص هست، یه روش غیراستاندارد هست.
روال کار در MVC یه جور دیگه است، مثلاً وقتی برای یه کنترلر بصورت خودکار View می سازید، نمونه هاش رو میتونید ببینید: LabelFor یا EditorFor و ValidationMessageFor و ... (به این extension method ها از طریق Html@ دسترسی پیدا میکنید)
در MVC برای اینکار از html helper ها و partial view و ... استفاده میکنند، برای استفاده از helper های توکار MVC (یا بعد اینکه helper خودتون رو نوشتید) کافیه با helper@ از طریق موتور Razor به اونها دسترسی پیدا کنید.
البته بحث اش مفصله ولی بعنوان سرنخ شما باید دنبال templates و HTML helpers در MVC بگردین نه کنترل...
نمونه اش: 1 (http://www.asp.net/mvc/tutorials/older-versions/views/creating-custom-html-helpers-cs) و 2 (http://develoq.net/2011/how-to-create-custom-html-helpers-for-asp-net-mvc-3-and-razor-view-engine/) و 3 (http://msdn.microsoft.com/en-us/vs2010trainingcourse_aspnetmvc3formsandvalidation_ topic3.aspx)

hakim22
یک شنبه 20 اسفند 1391, 10:49 صبح
من برای مواردی که ابزار جدیدی لازم دارم از Silverlight استفاه می کنم. ولی مفهومی که در ASP.NET برای کنترلها وجود داره در MVC بی معنی است. و میشه هر چیزی رو با استفاده از Partial View طراحی کرد.