PDA

View Full Version : سوال: ثبت موقت در دیتا گرید ویو



m.batimar
یک شنبه 26 شهریور 1391, 17:38 عصر
سلام دوستان من یه برنامه نویس مبتدی هستم ...من میخوام مقداری از اطلاعات رو در دیتا گریدویو فقط نمایش بده و در صورت لزوم در پایگاه ذخیره کنه... حالا اگه هر کی از دوستان میدونه لطفا به طور کامل راهنماییم کنه که چجوری میشه که اطلاعات رو فقط نمایش داد به صورت موقت... ممنونم:تشویق:(البته به زبان سی شارپ)

ali_habibi1384
دوشنبه 27 شهریور 1391, 08:00 صبح
قطعا راه حلهاي ارائه شده به زبان سي شارپ خواهد بود چون شما در تالار سي شارپ تاپيك داديد.
براي كاري كه شما ميخوايد انجام بديد يه ديتا تيبل بسازيد و اونو با داده هايي كه ميخوايد پر كنيد و سپس به ديتا گريد متصل كنيد. نهايتا بعد از اينكه تصميم به ذخيره اطلاعات گرفتيد با يه sqlCommand اونو در ديتا بيس ذخيره كنيد و يا سطرهاي خاصي از اونو.

m.batimar
دوشنبه 27 شهریور 1391, 19:20 عصر
میشه خط کدشو برام بنویسید ...چون من جوری که بلدم به پایگاه وصل میشه و اینطوری بلد نیستم لطفا کدشو کامل برام بنویسین ممنونم....

ali_habibi1384
سه شنبه 28 شهریور 1391, 09:16 صبح
قبلش فرض كنيد اطلاعات رو در ديتا تيبل ريختيد و تونو به گريد dg وصل كرديد بنابراين اطلاعاتي رو كه لازم داريد از گريد ميخونيد و ذخيره ميكنيد :
if (dg.Rows.Count > 0)
{
for (int i = 0; i < dg.Rows.Count; i++)
{
if (refFaktor.Insert(IdFaktor, dg["Id", i].Value.ToString(), dg["Tedad", i].Value.ToString(), dg["Price", i].Value.ToString()) == 0)
{
MessageBox.Show("خطا در ثبت اطلاعات", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
در اينجا refFaktor شي از كلاس فاكتور هست كه كار فراخوني متد Insert در لايه DAL رو برعهده داره .بقيه كد هم كه خيلي واضح هست.

behruz1212
چهارشنبه 29 شهریور 1391, 22:49 عصر
ببخشید دوستان لطفا راهنماییم کنید که چگونه در زمان اجرا میتونیم گریدویو رو پر کنیم البته من این کدارو نوشتم ولی مشکلش اینه که همه ی سطرهای گریدویو رو مثل هم پر میکنه


DataTable Mobiles = new DataTable();
Mobiles.Columns.Add("نام ");

for (int i = 0; i < dataGridView1.Rows.Count; i++)
{

DataRow dr = Mobiles.NewRow();
dr["نام "] = txtnam.Text;
Mobiles.Rows.Add(dr);
}
dataGridView1.DataSource = Mobiles;

لطفا اشکال کدمو بگید ممنونم

ali_habibi1384
پنج شنبه 30 شهریور 1391, 07:04 صبح
درسته. شآخه شما اومدي هميشه از يه تكست باكس خوندي و همونو هم هر بار به ديتاتيبلت اضافه كردي.
منظورت از اون حلقه for چي بوده كه اون بالا گذاشتي؟ ميخواستي چيكار كني و باز در آخر اونو به Mobiles وصل كردي؟!

behruz1212
پنج شنبه 30 شهریور 1391, 12:34 عصر
من حلقه for رو گذاشتم که سطر به سطر ثبت کنه داخل گریدویو..... کد درستش چیه که تکراری نشون نده؟؟؟

ali_habibi1384
پنج شنبه 30 شهریور 1391, 14:56 عصر
من حلقه for رو گذاشتم که سطر به سطر ثبت کنه داخل گریدویو..... کد درستش چیه که تکراری نشون نده؟؟؟
اينه كه بجواي خوندن از تكست باكس از گريد ويو بخونيد:
dataGridView1["ColumnName",RowNumber].value.tostring()

boysilent
پنج شنبه 30 شهریور 1391, 15:09 عصر
بچه ها منم سوالم همینه دقیق متوجه نشدم چطوری میشه این اطلاعات رو مثلا از داخل یه تکست باکس بریزی داخل گرید بعدش مثلا 6 تا ردیف که پرشد انتقال بدی به جدول ؟؟؟؟
کسی راهی سراغ داره؟