Ebrahim_Rayaneh
شنبه 05 اسفند 1391, 00:20 صبح
با سلام
3 تا تکست باکس داریم که با وارد کردن مقادیر به آنها و کلیک یه باتن(button) آن مقادیر به صورت یه سطر جدید به دیتاگریدویو اضافه میشوند اما من وقتی این باتن رو کلیک میکنم به جای اینکه سطر جدید بعد از سطر قدیمی قرار بگیرد قبل از آن قرار میگیرد
private void btnInserList_Click(object sender, EventArgs e)
{
//تعیین آخرین مقدار ستون ردیف
int iRadif=1;
if (dgvComodity.Rows.Count > 0)
{
if (dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["radif"].Value != null)
{
iRadif = (int)dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["radif"].Value;
}
}
//ورود اطلاعات تکست باکس ها به دیتاگریدویو
if (dgvComodity.Rows.Count > 0)
{
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["radif"].Value = iRadif;
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["name"].Value = txtCommodityName.Text.Trim();
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["num"].Value = txtNum.Text.Trim();
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["price"].Value = txtPrice.Text.Trim();
DataGridViewRow nRow = (DataGridViewRow)dgvComodity.Rows[0].Clone();
dgvComodity.Rows.Insert(dgvComodity.Rows.Count-1, nRow);
}
else
{
MessageBox.Show("error!");
return;
}
}
در ضمن میخواهم وقتی فرم لود میشود هیچ سطری در دیتاگریدویو مشاهده نگردد و فقط هدرها مشخص باشند،البته این دیتاگریدویو به صورت آنباوند (unbound) میباشد.
private void frmCommodity_Load(object sender, EventArgs e)
{
dgvComodity.Columns.Add("radif", "ردیف");
dgvComodity.Columns.Add("name", "نام کالا");
dgvComodity.Columns.Add("num", "تعداد");
dgvComodity.Columns.Add("price", "قیمت");
dgvComodity.Columns["radif"].Width = 200;
}
اگه مشکل کد فوق را بگویید ممنونتان میشوم.
3 تا تکست باکس داریم که با وارد کردن مقادیر به آنها و کلیک یه باتن(button) آن مقادیر به صورت یه سطر جدید به دیتاگریدویو اضافه میشوند اما من وقتی این باتن رو کلیک میکنم به جای اینکه سطر جدید بعد از سطر قدیمی قرار بگیرد قبل از آن قرار میگیرد
private void btnInserList_Click(object sender, EventArgs e)
{
//تعیین آخرین مقدار ستون ردیف
int iRadif=1;
if (dgvComodity.Rows.Count > 0)
{
if (dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["radif"].Value != null)
{
iRadif = (int)dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["radif"].Value;
}
}
//ورود اطلاعات تکست باکس ها به دیتاگریدویو
if (dgvComodity.Rows.Count > 0)
{
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["radif"].Value = iRadif;
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["name"].Value = txtCommodityName.Text.Trim();
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["num"].Value = txtNum.Text.Trim();
dgvComodity.Rows[dgvComodity.Rows.Count - 1].Cells["price"].Value = txtPrice.Text.Trim();
DataGridViewRow nRow = (DataGridViewRow)dgvComodity.Rows[0].Clone();
dgvComodity.Rows.Insert(dgvComodity.Rows.Count-1, nRow);
}
else
{
MessageBox.Show("error!");
return;
}
}
در ضمن میخواهم وقتی فرم لود میشود هیچ سطری در دیتاگریدویو مشاهده نگردد و فقط هدرها مشخص باشند،البته این دیتاگریدویو به صورت آنباوند (unbound) میباشد.
private void frmCommodity_Load(object sender, EventArgs e)
{
dgvComodity.Columns.Add("radif", "ردیف");
dgvComodity.Columns.Add("name", "نام کالا");
dgvComodity.Columns.Add("num", "تعداد");
dgvComodity.Columns.Add("price", "قیمت");
dgvComodity.Columns["radif"].Width = 200;
}
اگه مشکل کد فوق را بگویید ممنونتان میشوم.