Smobiler上海石磨_.NET移动开发平台

标题: 点击listview模板中的按钮,将当前行控件值传到另一个窗体 [打印本页]

作者: whj555    时间: 2020-1-21 11:27
标题: 点击listview模板中的按钮,将当前行控件值传到另一个窗体
老师,如何点击listview模板中的《选择》按钮,将当前行控件值传到另一个窗体lable.text中?新手求救
[attach]1801[/attach][attach]1804[/attach]
[attach]1802[/attach]
下面图要接受传来的值
[attach]1803[/attach]



作者: Lula.Jin    时间: 2020-1-21 13:29
看你两个窗体之间的关系,若是窗体1 跳转窗体2,用构造方法传参,Show(new SmobilerForm2(a,b));

作者: whj555    时间: 2020-1-21 13:30
Lula.Jin 发表于 2020-1-21 13:29
看你两个窗体之间的关系,若是窗体1 跳转窗体2,用构造参数传参

先是如何点击模板按钮从listview中取值?
作者: Lula.Jin    时间: 2020-1-21 13:50
form中 取值指定行模板  listview.Rows[i].Control  ,再从中找checkbox,可以打断点 看的
   
或者你在usercontrol中if(checkbox.Checked) ( (smobilerForm1)this.Form).a=xxx;   在listview所在窗口SmobilerForm1中声明一个public  的变量a
作者: whj555    时间: 2020-1-21 14:12
Lula.Jin 发表于 2020-1-21 13:50
form中 取值指定行模板  listview.Rows.Control  ,再从中找checkbox,可以打断点 看的
   
或者你在userc ...

还是不明白,;就想看个实例参考一下。比如下载啦SmobilerApplication6这个实例,里面是点击listview窗体中按钮,循环查找模板中的值。我就想在模板中添加按钮,在点击如何得到值。之前的SmobilerApplication6截图如下[attach]1805[/attach]
作者: Lula.Jin    时间: 2020-1-21 14:30
这个示例很简单了,你是哪里不懂?若是想在usercontrol中加按钮弹出信息就在button的点击事件中写Toast(checkbox1.Checked.ToString())

作者: whj555    时间: 2020-1-21 15:42
Lula.Jin 发表于 2020-1-21 14:30
这个示例很简单了,你是哪里不懂?若是想在usercontrol中加按钮弹出信息就在button的点击事件中写Toast(ch ...

就是模板按钮中事件如何写?取listview中当前行的值
作者: whj555    时间: 2020-1-21 16:02
Lula.Jin 发表于 2020-1-21 14:30
这个示例很简单了,你是哪里不懂?若是想在usercontrol中加按钮弹出信息就在button的点击事件中写Toast(ch ...

有点击模板中按钮取当前行的行号以及当前行控件值的实例吗?
作者: Lula.Jin    时间: 2020-1-21 16:54
没有行号属性,你可以在绑定数据的时候可以绑定行号的,例如SmobilerApplication6中的id作为行号,点击checkbox弹出行号可以在checkbox的CheckedChanged事件中写 Toast(label1.BindDataValue.ToString());  //BindDataValue的值是label.DataMember绑定的值,
listview没有行点击事件,可以用usercontrol中控件的事件代替
[attach]1806[/attach]
作者: whj555    时间: 2020-1-21 17:20
不行,不得要领,还是会报错
作者: whj555    时间: 2020-1-21 17:24
是要点击模板中右边的button按钮,这个按钮添加事件,如何获取listview中行号,以及模板中lable1,lable2的值?
作者: linyan    时间: 2020-1-29 11:36
本帖最后由 linyan 于 2020-1-29 11:38 编辑

解决的方法:

   1、在主窗体:
      public string UserName;//公用变量

      public void ShowName() //公用方法
      {
         textBox1.Text = textBox1.Text + UserName;
      }


   2、在主窗体的控件:
      ((SmobilerForm14)this.Form).UserName = "@" + this.label3.Text;//调用公用变量
      ((SmobilerForm14)this.Form).ShowName();//调用公用方法


    3、结果:
       控件窗体通过 UserName 公用变量传值到主窗体的 textBox1.Text 中。
作者: whj555    时间: 2020-2-2 17:19
linyan 发表于 2020-1-29 11:36
解决的方法:

   1、在主窗体:

不知道怎么搞的,这张办法也不行[attach]1811[/attach]

作者: whj555    时间: 2020-2-2 18:28
构造函数也不行[attach]1812[/attach]下面是listview中控件按钮点击代码

[attach]1814[/attach]

几种办法都无法窗体转值。不知道错在哪里?





欢迎光临 Smobiler上海石磨_.NET移动开发平台 (https://www.smobiler.com/) Powered by Discuz! X3.2