PDA

View Full Version : کپی مقادیر موجود در گرید ویو در یک جدول



csharpprogramer88
پنج شنبه 10 مرداد 1392, 22:49 عصر
سلام

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

اگر یک دکمه بزارم و بخوام با کلیک بر روی این دکمه تمامی فیلد های موجود در گرید به جدولی دیگر درج بشه و مقادیر فعلی موجود در گرید در جدول قبلی حذف بشه باید چه کدی بنویسم؟

دوستان گرامی من با entity frame work کار میکنم

amir200h
پنج شنبه 10 مرداد 1392, 22:56 عصر
یه تابع بنویس واسه درج کردنت بعد کد زیر بنویس
for (int i = 0; i < dataGridView11.Rows.Count; i++)
{
insert(i);
}

اینم مثلا تابع درج کردنت

public void insert(int i)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = "server=(local);database=darokhane;trusted_connecti on=yes";
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText = "insert into tbl_name (id,name) values (@id,@name)";
com.Parameters.AddWithValue("@id", dataGridView11.Rows[i].Cells[0].Value);
com.Parameters.AddWithValue("@name", dataGridView11.Rows[i].Cells[1].Value);
con.Open();
com.ExecuteNonQuery();
con.Close();
}

danialafshari
پنج شنبه 10 مرداد 1392, 23:48 عصر
یه تابع بنویس واسه درج کردنت بعد کد زیر بنویس
for (int i = 0; i < dataGridView11.Rows.Count; i++)
{
insert(i);
}

اینم مثلا تابع درج کردنت

public void insert(int i)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = "server=(local);database=darokhane;trusted_connecti on=yes";
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText = "insert into tbl_name (id,name) values (@id,@name)";
com.Parameters.AddWithValue("@id", dataGridView11.Rows[i].Cells[0].Value);
com.Parameters.AddWithValue("@name", dataGridView11.Rows[i].Cells[1].Value);
con.Open();
com.ExecuteNonQuery();
con.Close();
}

ایشون با EF نیاز دارن و کد شما ADO هست

amir200h
پنج شنبه 10 مرداد 1392, 23:55 عصر
بله ولی ماهیتش همینه. بجای کدهای تابع باید کدهای ef رو بزارن

csharpprogramer88
جمعه 11 مرداد 1392, 03:41 صبح
تا اینجای کارم راه افتاده

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

danialafshari
جمعه 11 مرداد 1392, 19:59 عصر
سلام

در تصویر Add Column... رو زدم

این کد هم مقدار ID سطر جاری رو به متغیر id میبره ، برای همه ی فیلدات همین کارو بکن
int id = int.Parse(dataGridView1.CurrentRow.Cells[0].Value.ToString());
MessageBox.Show(id.ToString());

موفق باشی

csharpprogramer88
جمعه 11 مرداد 1392, 22:15 عصر
اگه در گرید 10 سطر داشته باشم و سطرهای 2و6و9 تیک خورده باشد چطوری میتونم آیدی سطرهای 2و6و9 را بدست بیارم؟

khokhan
جمعه 11 مرداد 1392, 23:21 عصر
اگه در گرید 10 سطر داشته باشم و سطرهای 2و6و9 تیک خورده باشد چطوری میتونم آیدی سطرهای 2و6و9 را بدست بیارم؟

int i = 0;
List<int> ChkedRow = new List<int>();

for (i = 0; i <= dataGridView1.RowCount - 1; i++)
{
if (Convert.ToBoolean(dataGridView1.Rows[i].Cells["chkcol"].Value) == true)
{
ChkedRow.Add(i);
}
}

if (ChkedRow.Count == 0)
{
MessageBox.Show("Select one checkbox");
return;
}

foreach (int j in ChkedRow)
// دستورات مربوط به ثبت
{
{

csharpprogramer88
جمعه 11 مرداد 1392, 23:48 عصر
foreach (int j in ChkedRow)

این داره چیکار میکنه؟

khokhan
جمعه 11 مرداد 1392, 23:51 عصر
foreach (int j in ChkedRow)

این داره چیکار میکنه؟
یعنی هر ردیفی که از طریق چک باکس چک شده ........