PDA

View Full Version : BindingSource



sohrab o
دوشنبه 27 فروردین 1386, 16:14 عصر
در DotNet 2005 دارم یک فرم ورود اطلاعات مینویسم
با استفاده از یک BindingSource اطلاعات یک جدول که شامل کد و جنسیت است را به combo متصل کردم
وقتی که مرد انتخاب مشیه 1 و زن 0
اما مشکل اینجاست که نمی تونم تشخیص بدم که کد مرد چنده؟


یا بهتر بگم گطوری میشه در BindingSource رکورد جاری رو پیدا کرد؟

sohrab o
دوشنبه 27 فروردین 1386, 17:05 عصر
کسی نیست جواب بده ؟

programmermp
دوشنبه 27 فروردین 1386, 18:02 عصر
کسی نیست جواب بده ؟

سلام

من که نفهمیدم منظورت چیه !!!!!!!!!!!

به چی بایند کردی فیلدت رو که نمی دونی مرد چنده ؟؟؟؟؟؟/

یه خورده بیشتر توضیح بده

sohrab o
دوشنبه 27 فروردین 1386, 18:08 عصر
یه جدول دارم برای ذخیره اطلاعات افراد که یک فیلدش جنسیت
یه جدول هم برای زن و مرد

حالا وقتی میخوام از لیست مرد انتخاب می شه ، کدش داخل جدول اصلی قرار بگیره نه مقدارش
مثلا تو جدول 1 بجای مرد ذخیره بشه ؟!

programmermp
دوشنبه 27 فروردین 1386, 18:37 عصر
یه جدول دارم برای ذخیره اطلاعات افراد که یک فیلدش جنسیت
یه جدول هم برای زن و مرد

حالا وقتی میخوام از لیست مرد انتخاب می شه ، کدش داخل جدول اصلی قرار بگیره نه مقدارش
مثلا تو جدول 1 بجای مرد ذخیره بشه ؟!


ببین عزیز

من فرض می کنم که جدول ذخیره اطلاعات افراد جدول اصلی باشه که فکر کنم همینطور هم

هست شما توی فیلد جنسیتت مقدار 1 و 0 رو ذخیره کن حالا چطوری ؟؟؟؟؟؟؟؟/

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

توی فیلد کد ، باید کد مربوط به جنسیت که معرف نوع هست رو ذخیره کنی که مقادیر این

جدول 100% ثابت هست و تغییری نمی کنه

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

یه کاری انجام بدی :

1- باید بین این دو تا جدول ارتباط برقرار کنی inner join تا بتونی جنیست رو مشخص کنی

2 - باید چند خط کد بنویسی که اگر مقدار فیلد جنسیت برابر صفر بود مقدار تکست باکس

رو برابر زن بزار و در غیر اینصورت مرد بزار

همین اگه درست متوجه نشدم بگو مشکل کجاست تا بگم چی کار کنی

موفق باشید

mamadgmail
دوشنبه 27 فروردین 1386, 21:00 عصر
من درست نفهمیدم این مشکل شما چه ربطی به bindingsource داره شما selectedvalue توی combobox را باید اون فیلذی بذاری که کد مرد رن رو داره(البته اینو واسه این می گم که اگه می خوای ازش استفاده کنی). در ضمن اگر می خوای که موقع update همه چی درست باشه خوب باید بین جدول کد مرد زن و جدولی که از این کد استفاده می کنه relation بذاری. راجبه اینکه گفتی چطوری میشه رکورد جاری bindingsource رو بگیری اولا که یک پراپرتی به نام current داره در ضمن bindinhsource ایندکسر هم داره.

sohrab o
سه شنبه 28 فروردین 1386, 08:08 صبح
mamadgmail عزیز
دیقیقا همین چیزی که شما فرمودید منم استفاده کردم و جواب داد اما می خوام با bindingsource این کارو بکنم.
البته کارم راه افتاده اما همین طوری میخوام

MH2538
سه شنبه 28 فروردین 1386, 09:18 صبح
من دو راه بلدم
یکی با BindingContext
که اینه :


dataGridView1.BindingContext[DataSet1].Position

یکی دیگه هم با خود DatagridView که اینه :


dataGridView1.CurrentRow.Cells["YourColumnName"].Value.ToString()

mamadgmail
سه شنبه 28 فروردین 1386, 10:55 صبح
من که خدمتتون عرض کردم bindingSource ایندکسر داره و می تونید به راحتی با هر رکوردی که نیاز بود کار کنید. و نیاری به استفاده از bindinContext ندارید.

reza1357
سه شنبه 28 فروردین 1386, 14:21 عصر
این قسمت ها رو باید فیلدهاش رو تعیین کنی
در DataBinding و متد SelectedItem و SelectedValue و ValueMemeber رو باید با فیلدهای جداولت ست کنی تا هر موقعه در Combo جنسیت رو انتخاب کنی در جدول اصلی ذخیره بشن.

sohrab o
سه شنبه 28 فروردین 1386, 14:27 عصر
mamadgmail عزیز
این ایندکسر که میگید چطوری کار میکنه
یه کم بیشتر توضیح بدید
متشکرم از همه دوستان

sohrab o
پنج شنبه 30 فروردین 1386, 11:38 صبح
چرا جواب نمیده کسی!؟

sohrab o
جمعه 31 فروردین 1386, 10:27 صبح
یعنی واقا نمیشه؟