PDA

View Full Version : سوال: نوع پروپرتی (DataBindings)



bastakboys
دوشنبه 21 دی 1388, 07:52 صبح
نوع پروپرتی که در قسمت DataBindings هست چیست؟
به تصویر توجه کنید

http://img.majidonline.com/pic/256937/property.gif

و چطوری در کومپوننت نویسی به اون مقدار میدند؟

Hossis
دوشنبه 21 دی 1388, 10:28 صبح
این خصوصیت،‌ ویژگیهای خاصی از کنترل را که قابل پر شدن از اطلاعات هستند، به فیلد خاصی از یک جدول بانک اطلاعاتی مرتبط می سازد

bastakboys
دوشنبه 21 دی 1388, 10:40 صبح
این خصوصیت،‌ ویژگیهای خاصی از کنترل را که قابل پر شدن از اطلاعات هستند، به فیلد خاصی از یک جدول بانک اطلاعاتی مرتبط می سازد

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


Property ForeC_Fucos() As Color

Get


Return ForeCo
End Get
Set(ByVal value As Color)

ForeCo = value
End Set
End Property

مثلا این پروپرتی از نوع color هست

bastakboys
چهارشنبه 23 دی 1388, 14:52 عصر
واقعا کسی نمیدونه:متعجب:

Mani_rf
چهارشنبه 23 دی 1388, 14:54 عصر
از نوع DataSet است.

bastakboys
چهارشنبه 23 دی 1388, 15:00 عصر
از نوع DataSet است.

پس چطوری میشه برای یک کومپننت این خاصیت را درست کرد که مانند خاصیت Text در TextBoxبشود.
یعنی با قرار دادن یک فیلد جدول به آن بایند شود؟
به عکس توجه کن

Mani_rf
چهارشنبه 23 دی 1388, 15:03 عصر
این را دیگه باید از تیم 72نفری .net Framework بپرسی! البته از یکیشونم بپرسی کافیه!

bastakboys
چهارشنبه 23 دی 1388, 15:06 عصر
این را دیگه باید از تیم 72نفری .net Framework بپرسی! البته از یکیشونم بپرسی کافیه!
یعنی یک نمنه کد هم در اینترنت برای این کار پیدا نمیشه؟:ناراحت:

bastakboys
چهارشنبه 23 دی 1388, 15:45 عصر
به نظر من فکر کنم که:
DateBinding از نوع DataSet
http://img.majidonline.com/pic/257543/property1.JPG
و Text که فرزندی از پروپرتی مادر DataBinding از نوع دیگری باشه چون:
این بصورت پیش فرض:
http://img.majidonline.com/pic/257548/property3.gif

و این پروپرتی را من از نوع dataset درست کردم:
http://img.majidonline.com/pic/257547/property2.gif

در کنترلی که من نوشتم نمی تونم BindingSource را باز کنم و بر روی یک فیلد کلیک کنم

bastakboys
چهارشنبه 23 دی 1388, 18:41 عصر
کسی نمیدونه؟

bastakboys
چهارشنبه 23 دی 1388, 19:55 عصر
چطور یک پروپرتی را زیر مجموعه پروپرتی دیگر بکنم

Alghoochi
چهارشنبه 23 دی 1388, 23:42 عصر
چطور یک پروپرتی را زیر مجموعه پروپرتی دیگر بکنم
هدفت از زیر مجموعه کردن چیه؟
یعنی می خوای یه پروپرتی ویژگی های یه پروپرتی دیگه رو داشته باشه؟
یه توضیحی بدی بد نیست

bastakboys
پنج شنبه 24 دی 1388, 00:44 صبح
هدفت از زیر مجموعه کردن چیه؟
یعنی می خوای یه پروپرتی ویژگی های یه پروپرتی دیگه رو داشته باشه؟
یه توضیحی بدی بد نیست

http://img.majidonline.com/pic/257548/property3.gif

به عکس بالا توجه کن
Tag زیر مجموعه از DataBinding

به نظر من Tag یا text در این قسمت ، از نوع dataset نیست چون اگه به پست9 توجه کنی پروپرتی که من از نوع dataset ساختم با چیزی گه بصورت دیفولت بود متفاوته

mohammadi4net
پنج شنبه 24 دی 1388, 01:49 صبح
موضوع جالب و چالش انگیزیه !
به نظر من این یک پروپرتی ساده نیست نحوه ست کردن رو دقت کنید :
Me.TextBox1.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TblInjuryBindingSource, "fld_ID_Injury", True))

پس فعلا اولین سرنخی که داریم اینه
System.Windows.Forms.Binding

mohammadi4net
پنج شنبه 24 دی 1388, 11:08 صبح
ببینید تمام اشیایی که از Control به ارث می رسند دارای پروپرتی DataBindings هستند.
ما تمام پروپرتی های یک شی رو می تونیم از طریق اولین زیرشاخه پروپرتی DataBindings که (Advanced) می باشد به هر شی از نوع داده بایند کنیم.
فکر می کنم شما می خواین پروپرتی که تعرف می کنید بصورت پیش فرض داخل زیر شاخه پروپرتی DataBindings باشه؟ درست می گم؟
من اولین کاری که کردم این کد رو در متد سازنده UserControl خودم قرار دادم:

Me.DataBindings.Add("MyProperty", Nothing, Nothing)
این کد خطای Runtime میده و میگه dataSource نمی تونه Null باشه !
اینجا بود که برای خودمم سوال شد که چطور بعضی اشیا به صورت پیش فرض چند پروپرتی رو در زیر شاخه DataBindings خودشون دارند ، مثل Tag و Text و ...

این را دیگه باید از تیم 72نفری .net Framework بپرسی! البته از یکیشونم بپرسی کافیه!
اینم جواب که کدشو از رو دست 72 تن .net Framework درآواردم


<Bindable(True), DefaultValue(CStr(Nothing)), TypeConverter(GetType(StringConverter))> _
Public Property color() As Color
Get
Return Me.BackColor
End Get
Set(ByVal value As Color)
Me.BackColor = value
End Set
End Property

bastakboys
پنج شنبه 24 دی 1388, 11:24 صبح
واقعا گل کاشتی :چشمک:
پس برای این کار فقط کافیست:


<Bindable(True), DefaultValue(CStr(Nothing)), TypeConverter(GetType(StringConverter))> _

کد بالا را به ابتدای پروپرتی مورد نظر اضافه کنیم
:گیج::قهقهه::لبخند: