Я искал способ. Чтобы редактировать, обновлять и удалять мои данные, используя contextmenustrip.
По сути, я хочу, чтобы моя contextmenustrip могла взаимодействовать с Datagridview, проблема заключается в том, что всякий раз, когда я устанавливаю код для события click. это показывает ошибку, я все еще новичок в c#, поэтому я, вероятно, не понимаю что-то. это мой код.
private void DgAddnew_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
MessageBox.Show("You can now Edit this data, Choose Update Button To populate, Thank you!", "Edit Data,", MessageBoxButtons.OK, MessageBoxIcon.Information);
int index = e.RowIndex;// get the Row Index
DataGridViewRow selectedRow = dgAddnew.Rows[index];
txtNAME.Text = selectedRow.Cells[1].Value.ToString();
txtADDRESS.Text = selectedRow.Cells[2].Value.ToString();
txtCELLPHONE.Text = selectedRow.Cells[3].Value.ToString();
txtCODE.Text = selectedRow.Cells[4].Value.ToString();
cmbTYPE.Text = selectedRow.Cells[5].Value.ToString();
cmbCOLOR.Text = selectedRow.Cells[6].Value.ToString();
cmbHEELS.Text = selectedRow.Cells[7].Value.ToString();
cmbPAYMENT.Text = selectedRow.Cells[8].Value.ToString();
cmbPRICE.Text = selectedRow.Cells[9].Value.ToString();
cmbRESERVE.Text = selectedRow.Cells[10].Value.ToString();
cmbBONDFEE.Text = selectedRow.Cells[11].Value.ToString();
dpDATEOUT.Text = selectedRow.Cells[12].Value.ToString();
dpDATERETURN.Text = selectedRow.Cells[13].Value.ToString();
}
эта работа в datagridview. но когда я добавляю его в contextmenu, весь этот элемент не заполняется, и я получаю ошибку индекса строки.
private void EDITToolStripMenuItem_Click_1(object sender, EventArgs e)
{
MessageBox.Show("You can now Edit this data, Choose Update Button To populate, Thank you!", "Edit Data,", MessageBoxButtons.OK, MessageBoxIcon.Information);
int index = e.RowIndex;// get the Row Index
DataGridViewRow selectedRow = dgAddnew.Rows[index];
txtNAME.Text = selectedRow.Cells[1].Value.ToString();
txtADDRESS.Text = selectedRow.Cells[2].Value.ToString();
txtCELLPHONE.Text = selectedRow.Cells[3].Value.ToString();
txtCODE.Text = selectedRow.Cells[4].Value.ToString();
cmbTYPE.Text = selectedRow.Cells[5].Value.ToString();
cmbCOLOR.Text = selectedRow.Cells[6].Value.ToString();
cmbHEELS.Text = selectedRow.Cells[7].Value.ToString();
cmbPAYMENT.Text = selectedRow.Cells[8].Value.ToString();
cmbPRICE.Text = selectedRow.Cells[9].Value.ToString();
cmbRESERVE.Text = selectedRow.Cells[10].Value.ToString();
cmbBONDFEE.Text = selectedRow.Cells[11].Value.ToString();
dpDATEOUT.Text = selectedRow.Cells[12].Value.ToString();
dpDATERETURN.Text = selectedRow.Cells[13].Value.ToString();
}
часть, в которой он имеет "e.RowIndex", выдает ошибку. Есть ли способ, которым я могу объявить глобальное объявление или сохранить rowIndex в контейнере и иметь возможность взаимодействовать с contextmenustrip, ??
Я искал его в течение нескольких дней, и он все еще не работает. Это мой 12 дней изучения c# как моего первого языка, и это расстраивает меня, что я все еще плохо сосу. Пожалуйста, помогите мне. Спасибо.