用户
 找回密码
 立即注册

4

主题

17

帖子

400

积分

中级会员

Rank: 3Rank: 3

积分
400
发表于 2020-2-3 10:05:33
为达到设计要求,没用构造函数。因为用构造函数传值,模板按钮点击会重新初始化打开接受值窗体、

就采用公共变量和方法来传值。可是在listview模板中按钮事件中获取了行中lable值要传到另一个窗体中,会出现如题的问题(接受值窗体:SmobilerFormWlhkXzXg1;listview窗体:SmobilerFormWlhkXzr;listview窗体控件:SmobilerFormWlhkXzrMb)





本帖子中包含更多资源

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

x
使用道具 举报 回复
listview模板类中的this.Form指向的是listview所在的窗口,应该是SmobilerFormWlhkXzr
git上有个listview的demo,你可以看下https://github.com/comsmobiler/S ... ewTemplateUpdate.cs
使用道具 举报 回复 支持 反对
发表于 2020-2-3 12:21:14
Lula.Jin 发表于 2020-2-3 11:57
listview模板类中的this.Form指向的是listview所在的窗口,应该是SmobilerFormWlhkXzr
git上有个listview的 ...

老师,我是窗体A中label取值打开listview窗体B,查询出结果后,点击模板按钮取值。关闭窗体B,值传到A中。这句SmobilerFormWlhkXzr sour = (SmobilerFormWlhkXzr)this.Form;如何修改?
使用道具 举报 回复 支持 反对
listview的模板类中只能获取到listview所在的窗体b,获取不到窗体a的,你可以将值传给b,再由b传给a,例如:
窗体a中声明公有参数x
窗体b声明公有参数y用来接收数据listview在窗体b中
a窗体中代码可以这么写  this.Show(b,(obj,args)=>{
            x=b.y;
});
listview的模板类中可以写    ((b)this.Form).y="1";
这样关闭窗口b后,a窗体中的x就会变成1

使用道具 举报 回复 支持 反对
发新帖
您需要登录后才可以回帖 登录 | 立即注册