CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
(图)邪恶的韩国UMPC 使用 Java 编写数据库应用新规范
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

有个问题搞的我很别扭

楼主YuNa123(于娜(asp.net、js、设计模式。加我QQ: 325076676 ))2006-12-01 08:14:54 在 .NET技术 / C# 提问

有个问题搞的我很别扭。在弹出的对话窗体中有一个ListBox控件,当回到主窗体时候,我想从主窗体中访问对话窗体中的ListBox,怎么做?如果把ListBox设置成public   或者   internal   ,微软不推荐这么做。怎么办?  
   
  我是这样解决,我另外写了一个公有属性,通过它来访问私有的ListBox,不知道合理不合理??  
   
  private   ListBox   UserList  
   
   
  public   ListBox   UList  
  {  
  get  
  {  
          return   this.UserList;  
  }        
                    set  
                    {  
                            this.UserList   =   value;  
                    }  
  } 问题点数:10、回复次数:4Top

1 楼HeddaZ(大飞飞)回复于 2006-12-01 08:28:56 得分 0

用全局参数传呗~~~~  
  其实微软也不建议,你的应用有需求,他只是不建议而已,又不是不能Top

2 楼flyforlove(吾将远去)回复于 2006-12-01 08:58:55 得分 0

一般情况下因为ListBox是窗体的一个子控件,所以它不希望,在别的窗体对它有很高的访问权。  
  这是oop的封装性所至。  
  如果你开放了ListBox,那么等于把ListBox的所有功能都暴露了,  
  按照最小程度的按需索求,也就是说你只需要LIstBox里的数据的话,就另外写一个方法,只开放数据,其他的就不要开放了。Top

3 楼Tenner(BE.Tenner)回复于 2006-12-01 09:51:19 得分 0

写一个public方法,只实现你想要的功能Top

4 楼flyforlove(吾将远去)回复于 2006-12-01 14:52:24 得分 0

还有一种方式就是使用委托,  
  你不就是想在子窗口返回后,把数据给主窗体么,那就在主窗体里写一个委托方法,委托给子窗体,子窗体执行退出的时候,执行一下委托方法就可以了。Top

相关问题

关键词

得分解答快速导航

  • 帖主:YuNa123

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo