找回密码
 立即注册

QQ登录

只需一步,快速开始

781504429

注册会员

10

主题

36

帖子

102

积分

注册会员

积分
102

活字格认证

781504429
注册会员   /  发表于:2013-9-27 16:37  /   查看:5818  /  回复:5
在WPF环境下,首先在后台绑定SelectedItem, 然后前台选中FlexGrid表格行(比如第一行),并会根据选中行用MessageBox弹出相应信息,
当关掉MessageBox弹窗后,表格选中行会乱跳(比如会跳到第二行,或第三行),导致再次弹出MessageBox弹框,请问这如何修改?

5 个回复

倒序浏览
gw0506
超级版主   /  发表于:2013-9-27 17:48:00
沙发
我怀疑这种情况跟你写的代码有关。方便的话把你的Demo发出来。
回复 使用道具 举报
781504429
注册会员   /  发表于:2013-9-28 22:12:00
板凳
回复 2楼gw0506的帖子

这是我整理的代码,麻烦您看一下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
gw0506
超级版主   /  发表于:2013-9-29 09:54:00
地板
Demo我看了,原因是这样的,对于FlexGridSelectedItem你使用的TwoWay方式绑定,数据源和界面会互相同步。
但是,问题是你在设置FlexGridSelectedItem中使用了MessageBox.Show,这会将当前激活窗口变成MessageBox,当关闭MessageBox后,激活窗口变回MainWindow,FlexGrid重新获得焦点并造成SelectedItemChange,于是再次进入上述循环。

所以你只能调整逻辑。
回复 使用道具 举报
781504429
注册会员   /  发表于:2013-9-29 11:19:00
5#
回复 4楼gw0506的帖子

谢谢了
回复 使用道具 举报
gw0506
超级版主   /  发表于:2013-9-29 12:05:00
6#
不客气
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部