کدوم قسمتشو میخای توضیح بدم چون کد زیاد پیچیده ای نداره. کدی که تو فرم اول هست مربوط به رویداد CellContentClick دیتاگرید میشه . این رویداد وقتی فراخوانی میشه که ما روی محتویات یک سلول از دیتاگرید کلیک کنیم.
کد همراه توضیح:
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
//این خط چک میکنه ستون انتخاب شده در جدول خارج از محدوده نباشه
if (e.RowIndex < 0
//و همچنین چک میکنه که کاربر روی ستون مورد نظر ما کلیک کرده باشه
|| e.ColumnIndex != dataGridView1.Columns[1].Index) return;
// این خط مقدار سلول ای رو که کاربر انتخاب کرده میگیره
Int32 SelId = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString());
//مقدار گرفته شوده رو به یه متغییر که تو فرم 2 تعریف کردیم نسبت میدیم
//و فرم 2 رو نمایش میدیم
Form2 frm = new Form2();
frm.Sh_P = SelId;
frm.ShowDialog();
}
کدی که تو فرم 2 هست مربوط به رویداد shown فرم میشه . این رویداد بعد از نمایش فرم به کاربر اجرا میشه.این کد یه کد عمومیه که تو اکثر برنامه ها ازش استفاده میشه و محتویات جدول رو داخل دیتاگرید نمایش میده.
اگه بازم توضیح خواستی بگو تا واست توضیح بدم.