Значение ячейки TValueListEditor не обновляется

#delphi #windows-7 #refresh #cell #delphi-xe3

#delphi #windows-7 #обновить #ячейка #delphi-xe3

Вопрос:

У меня возникла проблема, когда TValueListEditor значение ячейки не обновляется. В OnStringsChange случае, если я изменяю значение одной ячейки на основе значения другой ячейки. В Windows XP оно работает нормально, но там, где, как и в Windows 7, значение TValueListEditor ячейки не обновляется.

Я попытался вызвать TValueListEditor.refresh метод, но он все еще не работает.

Кто-нибудь может дать мне решение этой проблемы?

Комментарии:

1. У вас есть какой-нибудь код? Вы можете видеть код?

Ответ №1:

Я использовал Valuelisteditor1.Invalidate метод, он перерисует сетку. смотрите код,

 procedure TForm1.ValueListEditor1StringsChange(Sender: TObject);
begin
 try
  if ValueListEditor1.Row = 1 then begin
  ValueListEditor1.Values['Foo3'] := ValuelistEditor1.Cells[1,1];
  Valuelisteditor1.Invalidate; //<<=== this redraws the grid properly
 end;
 finally
 end;
end;