PDA

View Full Version : سوال: کار با BindingSource



amin tavakoli
دوشنبه 27 تیر 1390, 09:15 صبح
سلام دوستان
من می خواهم به وسیله BindingSource یک مقدار از یکی از سلولهای ردیف انتخاب شده رو بگیرم این مقدار id و من نمی خوام آن رو در گرید ویو نمایش بدم فقط می خوام به عنوان شرط از ش استفاده کنم بگم اگر این ردیف از گرید ویو انتخاب شد با id این ردیف فلان عملیات رو در پایگاه داده انجام بده

gwbasic
دوشنبه 27 تیر 1390, 11:37 صبح
BindingSource پراپرتی ای داره به نام Current که سطر جاری رو مشخص می کنه و باید اونو به type مورد نظر cast کنی بعد و id رو ازش بگیری

amin tavakoli
دوشنبه 27 تیر 1390, 13:12 عصر
سلام دوست عزیز
اگر لطف کنی کدش رو برام بزاری ممنون میشم چون هر type ی میذارم ایراد می گیره

gwbasic
دوشنبه 27 تیر 1390, 13:53 عصر
یه BreakPoint روی کدی که نوشتی، خطی که کد bindingsource.Current رو گذاشتی بذار بعد تو Debug ببین type ش چیه.
تاپیش بر اساس DataSource که برای BindingSource دادی مشخص می شه. اگر DataTable باشه فکر کنم که تایپش DataRowView می شه و ... .

amin tavakoli
دوشنبه 27 تیر 1390, 13:56 عصر
دوست عزیز
سوال دیگه ای در رابطه با boundingsourc دارم و آن اینکه می خوام از طریق boundingsourc یک ردیف اطلاعات رو از یک گرید ویو در یک فرم بگیرم و در گرید ویو فرم دیگه وارد کنم و به جای اینکه مدام به پایگاه داده وصل بشم این کار رو با boundingsourc و dete set و tableadaptor انجام بدم نظر شما چیه ؟ لطفا با کد برام توضیح بدین ممنون

gwbasic
دوشنبه 27 تیر 1390, 14:36 عصر
من پیشنهاد می کنم این آموزشی رو که در مورد DataBinding و BindingSource گذاشتم رو بخونید تا مفهوم BindingSource رو کامل متوجه بشید.
بعد کدی رو که نوشتید بذارید تا کاملش کنیم

http://barnamenevis.org/showthread.php?288558-Data-Binding

amin tavakoli
دوشنبه 27 تیر 1390, 16:33 عصر
دوست عزیز من مبتدی ام و با اینکه زیاد سر د ر نمیارم ولی آن رو مطالعه کردم شما نوشته بودید اطلاعاتی که در Datasource تغییر میکنه در BindingSource اعمال نمیشه ؟ یعنی برای خوندن اطلاعات نباید ازش استفاده کنم ؟ با این حال کدم اینه .
کدی که توی فرم اول استفاده کردم اینه
DataRowView dr =(DataRowView)customerBindingSource.Current;
و چون این اطلاعات رو میخوام به گرید ویو یه فرم دیگه بفرستم از properties - seting استفاده کردم یک متغییر تعریف کرم از نوع data view بنام row و بعد مقدار dr رو در ان ریختم که البته میدونم نوعش اشتباه و پیغام میده
Tell_Gooya10.Properties.Settings.Default.row = dr;
پیغامش اینه
Error 1 Cannot implicitly convert type 'System.Data.DataRowView' to 'System.Data.DataViewManager' E\Tell Gooya11\Tell Gooya10\frminsert.cs 32 60 Tell Gooya10
دوست عزیز کد بالا درست یا نه ؟ اصلا روشم درست ؟ و ا گر خواستم اطلاعات رو به ردیف آخر گرید ویو اضافه کنم چیکار باید بکنم ؟

gwbasic
دوشنبه 27 تیر 1390, 18:20 عصر
روشت که اشتباه محض Setting کاربردش چیزه دیگه ای هست!
من هنوز نمی دونم که این دوتا گرید توشون چی هست و برا چی می خوای چیزیو بینشون ردو بدل کنی اول سناریو رو کامل توضیح بده

amin tavakoli
سه شنبه 28 تیر 1390, 20:27 عصر
سلام . دوست عزیز من باید از یکسری شماره تلفن با مشخصات کامل یک یا چند تا رو انتخاب کنم بعد آنها رو به لیست شخصی خودم که اینجا گرید ویو فرم دوم هست اضافه کنم بعد هر شماره ای رو خواستم انتخاب و از طریق کامپیوتر شماره گیری کنم از اینکه به تایپیکم سر زدی ممنون چون من یه مقدار برای دسترسی به اینترنت مشکل دارم و نتونستم به موقع جواب شما رو ببینم

gwbasic
چهارشنبه 29 تیر 1390, 09:29 صبح
اینطور که متوجه شدم شما از یک لیست شماره تلفن تعدادی رو می خواهید انتخاب کنی و بعد کاری رو روشون انجام بدی
پس نیازی به استفاده از دو فرم نیست شما توی گریدتون امکان MultiSelect رو داری و از طریق SelectedRows میتونی کار مورد نظرتو روی سطرهای (شماره های) انتخاب شده انجام بدی

amin tavakoli
چهارشنبه 29 تیر 1390, 14:29 عصر
اما من باید از دو تا فرم استفاده کنم باید یک لیست درست کنم از تماسهای که خواهم داشت و اینو از من خواسته ان
:گریه::گریه::گریه:

gwbasic
چهارشنبه 29 تیر 1390, 18:13 عصر
گریه نکن ناز بشی ایشالا !!!!!!!
پروژتو بذار تا کاملش کنم