کدهای آماده دیتا گرید ویو در سی شارپ

2
341
کدهای آماده دیتاگرید ویو در سی شارپ

از دیتاگرید ویو در برنامه های سی شارپ به صورت گسترده استفاده می شود. دیتاگریدویو در اصل همان جدولی می باشد که داده های ما برای کاربر نمایش داده می شود. این داده ها ممکن است از طریق کاربر و یا از دیتابیس در دیتاگریدویو نمایش داده شود.

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

کد زیر برای نمایش تعداد رکوردهای موجود در دیتا گرید ویو می باشد:

;MessageBox.Show(dataGridView1.RowCount.ToString())

 

برای خواندنی کردن تمام سطرها و ستون های دیتا گرید ویو از کد زیر استفاده کنید:

;dataGridView1.ReadOnly = true

کد زیر فقط سطر اول را خواندنی می کند:

;dataGridView1.Rows[0].ReadOnly = true

کد زیر فقط ستون اول را خواندنی می کند:

;dataGridView1.Columns[0].ReadOnly = true

کد زیر ستون اول را مخفی می کند:

;dataGridView1.Columns[0].Visible = false

اضافه کردن یک ردیف خالی به دیتاگرید ویو:

;dataGridView1.Rows.Add(1)

برای حذف سط اول از کدی زیر استفاده می شود:

;dataGridView1.Rows.RemoveAt(1)
مرتب سازی ستون ها به صورت نزولی:
;dataGridView1.Sort(dataGridView1.Columns[“id”],ListSortDirection.Descending)

 

اگر از کد زیر استفاده کنید هنگامی که یک سلول را ویرایش می کنید آن را به رنگ آبی نمایش می دهد:

private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{ ;e.CellStyle.BackColor = Color.Blue }
برای اضافه کردن یک فیلد محاسباتی به دیتا گرید ویو از کد زیر استفاده می کنیم:
;”string strcon = “Data Source=test\\SQLEXPRESS;Initial Catalog=data-acc;” + “Integrated Security=True
;”string sqlselect = “select * from table1
;SqlDataAdapter da = newSqlDataAdapter(sqlselect,strcon)
;()DataTable dt = newDataTable
;da.Fill(dt)
;dt.Columns.Add(newDataColumn(“new”, typeof(Decimal),“cod_aslo + 6000”))
;dataGridView1.DataSource = dt
برای حذف آخرین رکورد از دیتا گرید ویو از کد زیر استفاده می کنیم:
;if (dataGridView1.Rows.Count > 0) dataGridView1.Rows.RemoveAt(dataGridView1.Rows.Cou nt – 1)
برای حذف رکوردی در دیتا گرید ویو که انتخاب شده است از کد زیر استفاده می کنیم:
;int IdColumn = 0
foreach (DataGridViewRow row in this.dataGridView1.SelectedRows)
}
;dataGridView1.Rows.RemoveAt(row.Index)
;int id = Convert.ToInt32(row.Cells[IdColumn].Value)
{
برای درج عنوان در دیتا گرید ویو از طریق کدنویسی به این شکل عمل کنید:
;”کد کالا”=dataGridView1.Columns[0].HeaderText
;”نام کالا”=dataGridView1.Columns[1].HeaderText
برای اینکه داده ها به صورت وسط چین در سلول ها قرار گیرد از کد زیر استفاده می کنیم:
;this.dataGridView1.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
برای تست خالی نبودن دیتا گرید ویو از کد زیر استفاده می شود:
if (dataGridView1.Rows.Count < 2)
{
MessageBox.Show(“هیچ رکوردی وجود ندارد”);
}
برای تست خالی بودن سطر به سطر دیتاگرید ویو از کد زیر استفاده می شود:

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

if (dataGridView1.Rows[i].Cells[0].Value.ToString() == “”)
{
MessageBox.Show(“سطر” + i.ToString() + “خالی می باشد”);
}

}

برای تست خالی نبودن ستون شماره ۲ در تمام سطرها از کد زیر استفاده می کینم:

for (int i = 0; i < dataGridView1.Rows.Count – 1; i++)
{
if (dataGridView1.Rows[i].Cells[2].Value.ToString() == “”)
{
MessageBox.Show(“مقادیر یکی از کالاها وارد نشده است . ورودی ها را چک کنید”);
dataGridView1.Rows[i].Cells[2].Selected = true;
break;

}
}

برای خواندن داده های یک جدول از دیتابیس sql server و نمایش آن در دیتا گرید ویو از کد زیر استفاده می کنیم:

SqlConnection con = new SqlConnection(“server = localhost;database = anbar;trusted_connection=yes;”);
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter(“SELECT DISTINCT id_kala,name_kala FROM table_kala”, con);
con.Open();
sda.Fill(dt);
DataSet ds = new DataSet();
sda.Fill(ds, “table_kala”);
con.Close();
DataView dv = new DataView(ds.Tables[“table_kala”]);
dataGridView1.DataSource = dv;
dataGridView1.Columns[0].HeaderText = “کد کالا”;
this.dataGridView1.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
dataGridView1.Columns[1].HeaderText = “نام کالا”;
this.dataGridView1.Columns[1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

 

با استفاده از کد زیر، با کلیک بر روی سطر مورد نظر در دیتا گرید ویو، داده های آن سطر در تکست باکس ها قرار می گیرد(این کد را باید در رویداد CellClick نوشته شود):

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
t_id_kala.Text = dataGridView1.CurrentRow.Cells[0].Value.ToString();
t_name_kala.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString();
}

با استفاده از کد زیر، با کلیک بر روی سطر مورد نظر در دیتا گرید ویو، تصویری که در سلول مربوطه قرار گرفته در picturebox نمایش داده می شود:
MemoryStream ms = new MemoryStream((byte[])(dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[0].Value));
pictureBox1.Image = Image.FromStream(ms);

 

از طریق کد زیر می توانید داده ها را از طریق تکست باکس به دیتا گرید ویو منتقل کنید:

string s_id = t_id_kala.Text;
string s_name_kala = t_name_kala.Text;
string[] rrow = { s_id, s_name_kala};
dataGridView2.Rows.Add(rrow);

از کد زیر می توانید عرض سلول ها را از طریق کدنویسی مشخص کنید:

dataGridView1.Columns[0].Width = 80;

 

برای انتقال داده های یک سطر از یک دیتا گرید ویو به دیتا گرید ویو دیگر از کد زیر استفاده می کنیم:

string no = dataGridView2.CurrentRow.Cells[0].Value.ToString();
string name = dataGridView2.CurrentRow.Cells[1].Value.ToString();
string[] rrow = { no, name };
dataGridView1.Rows.Add(rrow);

 

برای ورود داده به دیتا گرید ویو از طریق کد نویسی به این شکل عمل کنید:

dataGridView1.Rows.Add(“1”, “علی”, “محمدی”);

 

برای تغییر فونت در دیتا گرید ویو از طریق کد نویسی از کد زیر استفاده کنید:

dataGridView1.Rows[i].DefaultCellStyle.Font = new Font(“2 Traffic”, 10, FontStyle.Bold);

 

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

2 دیدگاه‌ها

    • با سلام، با توجه به تغییر قالب سایت مشکلاتی در برخی از برگه ها بوجود آمده که تا چند ساعت آینده رفع خواهد شد. با تشکر

ارسال یک پاسخ

لطفا دیدگاه خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید