作业帮 > 综合 > 作业

请帮我解释一下下面的的C#语句吧

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/28 06:19:47
请帮我解释一下下面的的C#语句吧
具体情况是 有两个窗口 FrmMain 和FrmAdd FrmMain 中有个状态栏里面有个lable text为tssUsername 现在后者是前者的前者代码中 有
FrmAdd f=new FrmAdd (); 将窗体显示为模式对话框
在FrmAdd 的代码中有 定义了一个字符串str=(FrmMian)(this.owner).tssUsername .text
我就是想问一下 这句啥意思呢?
str=(FrmMian)(this.owner).tssUsername .text
获取自身所属FrmMain窗体中的状态栏tssUsername标签的文本
再问: 直接赋值就行了嘛 那括号中的又起什么作用呢?
再答: 第一个括号表示强制类型转换 第二个括号表示需要强制类型转换的对象 是this.owner
再问: 在这种情况下 this.owner我的理解就是FrmMain 怎么能自己转换成自己呢? 既然前面部分是转换 那后面的).tssUsername .text 是不是就是要转换的具体东西呢,只是这个东西是属于FrmMain 的?? 我这样理解对不呢?
再答: this.owner是Form类型的 而Form类型是不具备tssUsername 这个属性的 所以要转化为FrmMain 这样才能访问.tssUsername .text