c# winfrom 如何在BindingSource_PositionChanged 事件中取消行的移动?

LGame 2014-11-23 10:09:07

private void binCodeSet_PositionChanged(object sender, EventArgs e)
{
// 判断数据有修改,是否继续操作。
if (TestModify())
{
// 不继续时,光标停留在该行
// TODO 不知怎么实现??
}

BindControl();
}


预想操作:
表格绑定的数据源,可以单元格修改,在行移动时,判断表格该行是否有修改,如果有修改则提示消息,并询问是否继续,如果点否,则停留在该行,点是则光标进入下一行。

实际操作:
修改后,点击别的行,会提示已经修改的消息,并询问是否继续,然后,不论是点是还是点否,光标都会进入所点击的其他行。

现在想如果点否,焦点不离开当前行。
...全文
230 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxldfang 2014-11-23
  • 打赏
  • 举报
回复
我没用过,有没有 binCodeSet_PositionChanging事件?
健者天行 2014-11-23
  • 打赏
  • 举报
回复
PositionChanged 这个事件是在记录已经移动后触发的, 你可以在 PositionChanged 事件处理方法的 记录 下前一次的记录位置, 如果 == Yes ,移回上一次的位置。
EdsionWang 2014-11-23
  • 打赏
  • 举报
回复

if(MessageBox.Show() == DialogResult.Cancel)
{
   //焦点留在当前行
}

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧