У меня есть две ячейки datagridview, grid1 и grid2. Я загружаю файлы в обе сетки, я использовал версию файла. каждый раз, когда я сохраняю/редактирую файл, он увеличивает версию файла на 1 из 5, что означает, что это будет 6,7,8,9 и т. д.Как изменить цвет фона ячейки, если ячейка редактируется
версия файла начинается с 5. Приращение работает без проблем
Я хочу изменить цвет фона ячейки, если я загрузил файл и отредактировал, отредактировав эту ячейку, он должен изменить цвет фона на желтый.
- Загрузите существующий файл
- Редактировать файл
- Цвет фона редактируемой ячейки должен измениться на желтый
- Сохранить файл и очистить цвет (это работает)
I пробовал это, но он выделяет цвет, когда я создал файл. Мне нужно только изменить цвет фона фона только при редактировании файла.
мой код:
int version_Number = 5;
string _OriginalValue;
private void Grid1_CellBeginEdit_1(object sender, DataGridViewCellCancelEventArgs e)
{
try
{
_OriginalValue = Grid1[e.ColumnIndex, e.RowIndex].Value.ToString();
}
catch (Exception ex)
{
MessageBox.Show("Error occured.\nError message: " + ex.Message, "Error Occured", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
#region Grid2_CellEndEdit_1
private void Grid2_CellEndEdit_1(object sender, DataGridViewCellEventArgs e)
{
try
{
DataGridViewCell cell = Grid2[e.ColumnIndex, e.RowIndex];
if (cell.Value.ToString() != _OriginalValue)
{
if (version_Number >= 1000)
{
cell.Style.BackColor = Color.Yellow;
}
}
Там нет стыда, используя флаг когда-либо сейчас и потом. Перед загрузкой данных установите значение «bool loading = true», а затем - «false». Проверьте это в событии 'CellEndEdit'! – TaW
Можете ли вы показать мне, как? –
Мой ответ предполагает, что ваш код окраски работает, за исключением проблемы с загрузкой. – TaW