PDA

View Full Version : سوال: انتخاب یک فیلد از طریق gridview



Arian7
سه شنبه 19 مرداد 1389, 12:09 عصر
با سلام
من یک gridview دارم و یک button توی هر سطر گذاشتم می خواهم که روی button خاص
توی سطر خاص که کلیک شد مثلا محتویات فیلد نام مثلا که توی ستون نام هست رو برای من برگردونه ، چطور می تونم این کارو انجام بدم .خیلی در مورد ش search کردم
ممنون می شم راهنمایی کنید .

liliyan87
سه شنبه 19 مرداد 1389, 12:24 عصر
در propreties اون button خاصیت commandName برابر Select قرار بده بعدش وقتی کاربر روی Button کلیک میکنه باید کلید اصلی اون سطرو برگردونی و توی یه متغیر بریزی و در دستور select شرط را برابر اون آی دی که از گرید گرفتی قرار بدی و از طریق یه متغیر از نوع SQlDataReader فیلدی که میخوای و در TextBox مربوط بریزی.

liliyan87
سه شنبه 19 مرداد 1389, 12:30 عصر
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{

string id = GridView1.Rows[GridView1.SelectedIndex].Cells[1].Text;
string connection = System.Web.Configuration.WebConfigurationManager.C onnectionStrings["ASPNETDBConnection"].ConnectionString;
SqlConnection conn = new SqlConnection(connection);
string select = "SELECT * FROM [tblUniversity] WHERE PKUniID='" + id + "'";
conn.Open();
SqlCommand com = new SqlCommand(select, conn);
SqlDataReader dr = com.ExecuteReader();
if (dr.Read())
{
txtUni_edit.Text = dr["UniName"].ToString();
}
dr.Close();
conn.Close();

saeedr22
سه شنبه 19 مرداد 1389, 12:33 عصر
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
string s;
s=dataGridView1.Rows[e.RowIndex].Cells[شماره یا نام ستون].value;
}

Arian7
سه شنبه 19 مرداد 1389, 13:21 عصر
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{

string id = GridView1.Rows[GridView1.SelectedIndex].Cells[1].Text;
string connection = System.Web.Configuration.WebConfigurationManager.C onnectionStrings["ASPNETDBConnection"].ConnectionString;
SqlConnection conn = new SqlConnection(connection);
string select = "SELECT * FROM [tblUniversity] WHERE PKUniID='" + id + "'";
conn.Open();
SqlCommand com = new SqlCommand(select, conn);
SqlDataReader dr = com.ExecuteReader();
if (dr.Read())
{
txtUni_edit.Text = dr["UniName"].ToString();
}
dr.Close();
conn.Close();


ممنون از اینکه پاسخ دادید اما برنامه نویسی من سه لایه هست چطور می تونم بین این ها ارتباط برقرار کنم ؟ آخه sqlcommqand من توی لایه access layer هست و نهایتا خروجی توی یک dataset برگردانده می شود . ممنون از پاسختون

Arian7
سه شنبه 19 مرداد 1389, 13:40 عصر
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
string s;
s=dataGridView1.Rows[e.RowIndex].Cells[شماره یا نام ستون].value;
}

ممنون از اینکه پاسخ دادید اما من باید این متد رو خودم ایجاد کنم ؟ و کدی که نوشته بودید
من با زبان #c کار می کنم و این قسمت value رو ندارم اگه می شه بیشتر راهنمایی کنید ممنون می شم

liliyan87
سه شنبه 19 مرداد 1389, 23:31 عصر
ممنون از اینکه پاسخ دادید اما برنامه نویسی من سه لایه هست چطور می تونم بین این ها ارتباط برقرار کنم ؟ آخه sqlcommqand من توی لایه access layer هست و نهایتا خروجی توی یک dataset برگردانده می شود . ممنون از پاسختون

متاسفانه منم معماری سه لایه م ضعیفه :اشتباه: