PDA

View Full Version : ایجاد خاصیت DataBinding برای کلاس



Mrs.Net
پنج شنبه 24 بهمن 1387, 18:04 عصر
یک کلاس دارم که میخوام برای چند پارامترش خاصیت دیتابایندینگ بزارم
تا اینجا میدونم که اینترفیس IBindingableComponent باید اضافه بشه و لی دقیقا نمیدونم ساختارش چیه.
ممنون کامل راهنماییم کنید.

علیرضا مداح
دوشنبه 28 بهمن 1387, 08:23 صبح
سلام ذوست عزیز،
مباحث مربوط به Data Binding در حیطه ی ADO.Net هستند،
برای آشنایی با اینترفیس های مرتبط با ADO.Net مطلب زیر را مطالعه نمایید:
Interfaces Related To Data Binding (http://msdn.microsoft.com/en-us/library/41e17s4b.aspx)



With ADO.NET, you can create many different data structures to suit the binding needs of your application and the data you are working with. You may want to create your own classes that provide or consume data in Windows Forms. ...



و نمونه ای از به کارگیری اینترفیس IBindableComponent:
How Can I DataBind To a ToolStripItem? (http://blogs.msdn.com/jfoscoding/archive/2005/12/23/507164.aspx)
توجه کنید که اگر کلاس شما از کلاس Control به ارث گرفته می شود، این کلاس اینترفیس فوق را Implement می کند و نیازی به انجام اینکار توسط شما نیست،/

Mrs.Net
دوشنبه 28 بهمن 1387, 11:24 صبح
احتمالا من انگلیسیم ضعیف هست ! شما از to suit the binding needs of چه برداشتی کردید؟!!!
البته چون سطح علمی بالایی دارید مطمئنم فقط صرف وجود داشتن کلمه binding تو جمله همچین استنباطی نکردید که binding از خانواده ADO هست!

With ADO.NET, you can create many different data structures to suit the binding needs of your application and the data you are working with. You may want to create your own classes that provide or consume data in Windows Forms. ...
بایندیگ یک خاصیت برای کنترلها هست و میتونید بدون استفاده از هرگونه ADO یا دیتابیس از این خاصیت به خوبی استفاده کنید و هیچ ارتباطی با بخش ADO ندارد. (اینم اخطار دوم برای من ولی خوب انتظار نداشته باشید با اخطار گرفتن یک سری مسائل علمی رو زیر پا بزارم :) )



و نمونه ای از به کارگیری اینترفیس IBindableComponent:
How Can I DataBind To a ToolStripItem? (http://blogs.msdn.com/jfoscoding/archive/2005/12/23/507164.aspx)
توجه کنید که اگر کلاس شما از کلاس Control به ارث گرفته می شود، این کلاس اینترفیس فوق را Implement می کند و نیازی به انجام اینکار توسط شما نیست،/


ممنون اما برای site و disposed هم ساختار میخواد که اگه اوناروهم بدید ممنون میشم.
نه از کنترلی ارث بری نکرده.

علیرضا مداح
دوشنبه 28 بهمن 1387, 12:35 عصر
بایندیگ یک خاصیت برای کنترلها هست و میتونید بدون استفاده از هرگونه ADO یا دیتابیس از این خاصیت به خوبی استفاده کنید و هیچ ارتباطی با بخش ADO ندارد. (اینم اخطار دوم برای من ولی خوب انتظار نداشته باشید با اخطار گرفتن یک سری مسائل علمی رو زیر پا بزارم :) )


دوست عزیز، بله همینطور است، اما توجه داشته باشید که هنگامی که از اجزای دات نت فریم ورک و کتابخانه کلاس دات نت برای پیاده سازی Binding و DataBinding بهره می گیرید(در اینجا اینترفیس IBindableComponent)، این اجزاء جدا از ADO.Net نبوده و در ارتباط با آن هستند، در واقع تمامی اشیاء کتابخانه کلاس دات نت که از کلاس Control به ارث گرفته می شوند، این اینترفیس را Implement می کنند و به همین خاطر است که شما می توانید از ویژگی های DataBinding در کنترل هایی چون TextBox,ComboBox,... بهره گیرید، در غیر اینصورت میبایست خود این اینترفیس را پیاده سازی می نمودید، در ضمن توجه داشته باشید که DataBinding و مبحث دسترسی به داده ها، تنها در برقراری ارتباط و تعامل با RDBMS ها ختم نمی شود،
در مقاله فوق ذکر شده است که:
"در ADO.Net، شما می توانید ساختارهای داده ی گوناگونی را جهت بر آوردن نیازهای Biniding مربوط به برنامه کاربردی خود، ایجاد نمایید." و در ادامه به بررسی اینترفیس های مرتبط پرداخته شده است،
دلیل Bold کردن عبارت ذکر شده توسط شما، ارتباط آن با واژه ی ADO.Net و دیگر واژگان می باشد و باید در ارتباط با یکدیگر بررسی گردند،/



البته چون سطح علمی بالایی دارید مطمئنم فقط صرف وجود داشتن کلمه binding تو جمله همچین استنباطی نکردید که binding از خانواده ADO هست!


در ضمن هم اکنون ما در حال بحث درباره ADO.Net هستیمو این بخش نیز به مباحث مربوط به ADO.Net و LINQ مرتبط است، پس ADO.Net با ADO که مدل دسترسی به داده ها پیش از ADO.Net می باشد، متفاوت است،/

پاورقی:
در قانون شماره 24 سایت آمده است که اگر اعتراضی دارید، به مدیر مربوطه PM زده و مسئله را با ایشان مطرح نمایید، همانگونه که در بخش مذکور نیز مشاهده می کنید، مدیریت این بخش به عهده ی بنده می باشد، همچنین اگر به شخصی اخطار داده می شود، تماما" به دلیل حفظ نظم بوده و مسلما" به دلیل فعالیت علمی و نیز آوردن دلایل مستند و فنی، به کاربری اخطار داده نمی شود و تمامی مدیران تلاش خود را جهت برقراری محیطی منسجم، منظم و قانون مند به کار گرفته تا بستر فعالیت مفید برای کاربران محترم فراهم گردد،
باسپاس
علیرضا مداح
گروه مدیریت جامعه برنامه نویسان فارسی زبان