PDA

View Full Version : سوال: لود کردن سطر n ام در gridview



roholla.sadeghi
دوشنبه 19 تیر 1391, 19:42 عصر
با سلام
یه سوال داشتم

میخوام تو یه باتن یه کدی بنویسم که با کلیک روی باتن، سطر n ام گرید ویوو لود بشه، یعنی توی گرید ویوو ایندکسمون بشه سطر n . یعنی انگار روش کلیک شده باشه.
نمیدونم متوجه منظورم شدید یا نه!

هدفم از این کار اینه که میخوام یه باتن بذارم که با کلیک روی اون باتن، آآآآخرین سطر گرید ویوو کلیک بشه .
متوجه میشید چی میگم؟ فکر کنم دارم خیلی بد توضیح میدم! :متفکر:

veniz2008
دوشنبه 19 تیر 1391, 20:32 عصر
سلام، سوال جالبی بود،من یه تکست باکس روی فرم گذاشتم و کاربر شماره سطر مورد نظرش رو وارد میکنه و برنامه مشخصات اون سطر رو اگه وجود داشته باشه نشون میده،اینم کد مورد نظر:

SqlConnection conn = new SqlConnection("Data Source = (local);Initial Catalog = testgrid;Integrated Security = True");
conn.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from student", conn);
DataTable dt = new DataTable();
da.Fill(dt);
if (Convert.ToInt32(textBox1.Text.Trim()) > dt.Rows.Count)
{
MessageBox.Show("سطر وارد شده بزگتر از تعداد سطرهای جدول میباشد");
}
else
{
int i = Convert.ToInt32(textBox1.Text.Trim());
int j = Convert.ToInt32(dt.Rows[i-1][0].ToString());
SqlDataAdapter da2 = new SqlDataAdapter("select * from student where id =" +j, conn);
DataTable dt2 = new DataTable();
da2.Fill(dt2);
dataGridView1.DataSource = dt2;

roholla.sadeghi
دوشنبه 19 تیر 1391, 21:15 عصر
شگرد خوبی بود. مرسی
میشه گفت کارم تقریبأ راه افتاد

اما من قصد دارم یه کلید با عنوان "جدید" داشته باشم که تنها کاری که مبکنه این باشه که سطر آخر گرید ویوو رو کلیک کنه (سطر خالی = آخرین سطر گرید ویوو)

واسه این راه حلی هست؟

veniz2008
دوشنبه 19 تیر 1391, 21:52 عصر
یه کم فکر میکردی بد نبود مهندس!!!!!!!!!
اینم کدش:

SqlConnection conn = new SqlConnection("Data Source = (local);Initial Catalog = testgrid;Integrated Security = True");
conn.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from student", conn);
DataTable dt = new DataTable();
da.Fill(dt);
int i = dt.Rows.Count;
int j = Convert.ToInt32(dt.Rows[i-1][0].ToString());
SqlDataAdapter da2 = new SqlDataAdapter("select * from student where id =" +j, conn);
DataTable dt2 = new DataTable();
da2.Fill(dt2);
dataGridView1.DataSource = dt2;

mehdikhazaei
دوشنبه 19 تیر 1391, 22:43 عصر
{"Input string was not in a correct format."} === ارور میده.

یعنی کدوم قسمت کد اشتباهه؟

کل کد را در رویداد باتن نوشتم و در تکست باکس یک عدد یک رقمی نوشتم .

mehdikhazaei
دوشنبه 19 تیر 1391, 23:08 عصر
یه کم فکر میکردی بد نبود مهندس!!!!!!!!!
اینم کدش:

SqlConnection conn = new SqlConnection("Data Source = (local);Initial Catalog = testgrid;Integrated Security = True");
conn.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from student", conn);
DataTable dt = new DataTable();
da.Fill(dt);
int i = dt.Rows.Count;
int j = Convert.ToInt32(dt.Rows[i-1][0].ToString());
SqlDataAdapter da2 = new SqlDataAdapter("select * from student where id =" +j, conn);
DataTable dt2 = new DataTable();
da2.Fill(dt2);
dataGridView1.DataSource = dt2;


ارور مربوط به پاسخ قبلی شما می شد و الآن این کد خیلی خوب عمل می کنه و هر عددی در تکست باکس وارد بشه فقط سطر آخر در دیتا گرید ویو نمایش داده می شود.

veniz2008
دوشنبه 19 تیر 1391, 23:16 عصر
کد اول هم همونطوری که دوستمون تست کردن و خودم هم تست کردم مشکلی نداشت،احتمالا شما یه جایی رو دقت نکردید.

roholla.sadeghi
دوشنبه 19 تیر 1391, 23:43 عصر
یه کم فکر میکردی بد نبود مهندس!!!!!!!!!
اینم کدش:

SqlConnection conn = new SqlConnection("Data Source = (local);Initial Catalog = testgrid;Integrated Security = True");
conn.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from student", conn);
DataTable dt = new DataTable();
da.Fill(dt);
int i = dt.Rows.Count;
int j = Convert.ToInt32(dt.Rows[i-1][0].ToString());
SqlDataAdapter da2 = new SqlDataAdapter("select * from student where id =" +j, conn);
DataTable dt2 = new DataTable();
da2.Fill(dt2);
dataGridView1.DataSource = dt2;

ممنون جواب گرفتم :لبخند:

اون جمله اولت لایک داره :خجالت: