动态生成C1GridView,重新绑定后Key值不对?
本帖最后由 jasonLed 于 2022-3-28 16:10 编辑动态生成C1GridView,重新绑定后取key值,我的本意是要取Button1_Click中绑定的key值,但是实际取到的还是init中绑定的key值,怎么才能取到正确的值?
第一步点击bindgrid,此时key值是button
第二步点击getkeyvalue,目的是得到key值button,但实际取到的还是init
你好,麻烦上传一个完整的demo上来,我来重现一下问题,这个只有aspx文件跑不起来 本帖最后由 jasonLed 于 2022-3-28 16:50 编辑
Richard.Ma 发表于 2022-3-28 16:19
你好,麻烦上传一个完整的demo上来,我来重现一下问题,这个只有aspx文件跑不起来
有cs文件,你直接新建一个网站放进去就可以的,完整的已放附件
问题已经收到,我这边验证后明天早上给你回复 Richard.Ma 发表于 2022-3-28 18:25
问题已经收到,我这边验证后明天早上给你回复
好的,知道问题的原因了吗? 你可以看一下,点击GetKeyValue按钮时,又执行了一次OnInit方法,导致被设置为了“init”字符
实际上,你点击BindGrid按钮时,也是因为先执行OnInit方法新建了一个C1GridView,否则就无法获取到
你可以给OnInit中开始的时候加入下面的代码测试,这样可以避免第一个问题,但是就会导致第二个问题,
if (Page.IsPostBack)
return; 本帖最后由 jasonLed 于 2022-3-29 13:33 编辑
Richard.Ma 发表于 2022-3-29 12:28
你可以看一下,点击GetKeyValue按钮时,又执行了一次OnInit方法,导致被设置为了“init”字符
实际上, ...
这样会导致页面为空,不会动态生成gridview。按道理oninit之后,viewstate会被恢复,现在问题是看起来界面是恢复了,但是实际后台后去的绑定内容还是oninit里的
有后续进展吗? 目前暂时没有什么解决办法。这个问题已经作为bug转给研发那边了C1WEB-29016,此贴保留处理。后续研发这边的反馈结果我会更新到帖子中 有进一步消息吗?
页:
[1]
2