Я вставил DGV с именем MarksDGV1
в мое приложение, в то время как каждая ячейка внутри него имеет значение по умолчанию "0".Таким образом, после того, как пользователь изменяет значение некоторых из них, когда я пытаюсь достичь значения для последней отредактированной ячейки, он дает мне 0 вместо того, что набрал пользователь, даже если он отображается правильно ( Обратите внимание: невыбранные ячейки, которые не отображаются в синем цвете, показывают правильное значение) Как я могу это исправить?
Вот мой код:
MarksDGV1.Refresh();
MessageBox.Show(MarksDGV1.Rows[0].Cells[1].Value.ToString());
И вот как я построилDGV:
using (DataGridViewTextBoxColumn tmp = new DataGridViewTextBoxColumn())
{
tmp.Width = 90;
tmp.ReadOnly = true;
tmp.HeaderText = "פרק מס.";
MarksDGV1.Columns.Add(tmp);
}
for (int i = 1; i <= 30; i++)
{
using (DataGridViewTextBoxColumn tmp = new DataGridViewTextBoxColumn())
{
tmp.Width = 50;
tmp.HeaderText = "שאלה מס." + i;
MarksDGV1.Columns.Add(tmp);
}
}
for (int i = 0; i < 8; i++)
{
using (DataGridViewRow tmp = (DataGridViewRow)MarksDGV1.Rows[i].Clone())
{
tmp.Cells[0].Value = i + 1;
for (int j = 1; j <= 30; j++)
{
tmp.Cells[j].Value = 0;
//tmp.Cells[j].Value = CurrentExam.Psy[i].Answers[j - 1];
}
MarksDGV1.Rows.Add(tmp);
}
}
Обновление: Я пытался набрать DataGridView.Refresh();
, но не получилось!Обновление 2: я смог исправить это, выбрав другую ячейку, отличную от той, которая меня интересует, прежде чем я получу значения.Но это не решение для меня