我需要在编辑单元格之前显示确认消息。用户可以选择使用自动计算的值,也可以在Col 2中输入新值。如果用户选择使用自动计算的值,则应将下一个单元格(Col 3)置于编辑模式。
我正在使用下面显示的代码,因此当用户选项卡通过Col 1到Col 2时,它会显示一个确认对话框。当用户在对话框中单击“取消”时,焦点将保留在第2列中,如果用户单击“确定焦点”,则焦点将设置为第3列。
这里的问题是,在关闭对话框后,当我尝试输入文本框时,第一次击键被忽略,没有任何反应。然而,随后的击键工作正常。
奇怪的是,如果我直接在Col 2中单击,一切正常(第一次击键不会被忽略)。只有当我通过按Tab键从Col 1导航到Col 2时才会出现问题。
请帮我解决这个问题。
private void playBack(int playTime, int runUntil)
{
var frameTime = new DateTime(); var frameTime_ = new DateTime();
bool fwd = true;
if (runUntil < playTime) fwd = false;
playTime = trPlay.Value;
playGoStop = true;
lbPlayTime.Text = (playTime * numDtStepSize.Value).ToString();
while (true) //trPlay.Maximum + 1)
{
frameTime = DateTime.UtcNow;
if ((frameTime - frameTime_).TotalMilliseconds > (double)(1000 / numFps.Value))
{
systemUpdate(playTime);
trPlay.Value = playTime;
trPlay.Update();
lbPlayTime.Update();
frameTime_ = frameTime;
if (fwd)
{
playTime++;
if (playTime > runUntil) break;
}
else
{
playTime--;
if (playTime < runUntil) break;
}
}
if (!playGoStop) break;
}
}