C#如何将一个窗口的数据传递到另一个窗口使用?在线等,急求!

savannahmyself 2017-05-13 11:54:48
在窗口一中申明了一个公共静态变量
public static string name;
在另一个窗口中
string n = categries.name;
这样使用了这个变量,但是变量值似乎并没有传递过来,请问各位还有什么办法能实现两窗口间的数据传递吗?在线等,急求!
...全文
5748 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
戢翔 2017-05-18
  • 打赏
  • 举报
回复
引用 4 楼 savannahmyself 的回复:
categries 是窗体名 想在另一个窗口中打开使用
你要先给name赋值了之后,才能看到结果啊
  • 打赏
  • 举报
回复
我就看看,不说话
john_QQ:2335298917 2017-05-16
  • 打赏
  • 举报
回复
窗体间通信用事件
秋的红果实 2017-05-16
  • 打赏
  • 举报
回复
类名.static成员,可以访问啊,有什么错误提示?
夏天的枫 2017-05-15
  • 打赏
  • 举报
回复
你先看看你代码的执行顺序把,看那样都是先赋值,再改变的这个变量。。。
liuccsucn 2017-05-15
  • 打赏
  • 举报
回复
把属性放到一个静态类里,直接引用这个静态类中的属性。
正怒月神 2017-05-15
  • 打赏
  • 举报
回复
静态变量,构造函数,委托,都可以传值。
exception92 2017-05-13
  • 打赏
  • 举报
回复
不清楚你的 categries怎么定义的。 把属性放到一个静态类里,直接引用这个静态类中的属性。
水哥阿乐 2017-05-13
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
写成属性,然后你所谓的没用估计是值变更后界面要做些展示处理
依然冷暖 2017-05-13
  • 打赏
  • 举报
回复
比如说在form1里 定义个form2变量 然后就可以form2.lable.text 之类的方式直接控制另一个窗口内容了
  • 打赏
  • 举报
回复
从正常的设计模式上来说,不能随便使用 static 变量,应该先懂得如何编写足以证明“赋值结果冲突、混乱”的测试用例,然后再来使用 static 变量。 但是对你这个问题说这些优点太早。你还不能学会 static 不能滥用的概念,而应该先学会调试一个变量值什么时候赋值、什么时候读取的“技术”。说白了,只要知道调试就好。
  • 打赏
  • 举报
回复
包括你 #4 楼贴出来的,也都是静态的东西。 静态东西叫做“说是非”,只有不说是非而已实际测试、调试为准的人,才会开发。就好象说一个人会修水管,看看他如何处理各种坏了的水管就知道了。而假设一个人扛着一根水管走过,不能认为是水管工。 为什么读取一个变量值是 null,你调试一下有没有赋值就知道了。不要赶紧问别人“有没有别的写法的更好看的代码可以抄”。
  • 打赏
  • 举报
回复
引用 楼主 savannahmyself 的回复:
在窗口一中申明了一个公共静态变量 public static string name; 在另一个窗口中 string n = categries.name; 这样使用了这个变量,但是变量值似乎并没有传递过来,请问各位还有什么办法能实现两窗口间的数据传递吗?在线等,急求!
就事论事地说这样一条代码,这是不可能骗人的,程序不可能骗人。你实际调试过吗,所谓的“传值”是你自己的想象还是你真的先中断到了给 name 赋值代码、然后中断到了读取 name 的代码上? 这两条代码就算是执行过,如果先后次序不一样,结果也是不一样的。你这样中断调试过吗?程序不可能骗人,关键是我们根本不听程序的实话(调试)而是自己空想“应该谁先谁后执行代码”。
savannahmyself 2017-05-13
  • 打赏
  • 举报
回复
categries 是窗体名

想在另一个窗口中打开使用

110,533

社区成员

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

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

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