zoukankan      html  css  js  c++  java
  • 在.net2.0下动态创建用户控件(ascx)

    以前 我们在vs2003下可以很容易的 using 工程的namespace.目录.控件
    来声明和使用自己定义的用户控件,可到了vs2005下,垃圾微软的设计人员不知道抽动了那根神经,公用class都放在了app_code下
    当然,好处是代码分布简洁多了,好找了,可没法子动态控件 并给特定属性付值了
    看看vs2003下的代码
        ClearanceShoes  cs = (ClearanceShoes)this.LoadControl("Modules/ClearanceShoes/ClearanceShoes.ascx");
        cs.ShoesKind = "ladies";
        cs.ShoesSize = ladySizeList[i].ToString();
        ShoesSet.Controls.Add(cs); 

    这 cs 只能声明为 Control  了,或者你比较教科书的将控件们单独放在一个工程,编译为一个dll,引用近来也可以,
    我当然没有这么做,多傻啊,
    我试图将控件移到app_code目录下,被vs2005拒绝了
    可怜我百度了一下午,没有找到对应的方法,这时自称.net大师的kongking来问我有什么需要他帮助的,我鄙视的告诉他我正在解决微软的一个bug,
    没时间和他讨论太详细的东西....2分钟后我跪倒在地哭诉了我的问题,他淡淡的说为什么不用接口呢,晴 天 霹 雳
    我上次用接口是3年前作delphi的时候....
    我翻了翻.net1.1编程高级指南,晕死,虽然家里 设计模式 程序结构 一大队,可我还是讨厌研究那些东西,为什么要在挣钱的东西上搞得那么精通呢
    我不知道咋用interface..
    后来灵机一动,在app_code中实现了一个继承自System.Web.UI.UserControl 的baseclass,声明两个 virtual 然后再ascx中继承,然后实现
    最后再页面中 声明父类,然后创建子类这样,就都解决了

    不知道您看明白了没有

  • 相关阅读:
    BZOJ 3505: [Cqoi2014]数三角形 数学
    BZOJ 3931: [CQOI2015]网络吞吐量 最大流
    BZOJ 4236: JOIOJI MAP
    BZOJ 4247 挂饰 背包DP
    hihocoder #1224 : 赛车 dfs
    hihocoder #1223 : 不等式 水题
    BZOJ 3224: Tyvj 1728 普通平衡树 treap
    uoj #31. 【UR #2】猪猪侠再战括号序列 贪心
    BZOJ 1005: [HNOI2008]明明的烦恼 Purfer序列 大数
    心跳回忆4 攻略
  • 原文地址:https://www.cnblogs.com/myzerg/p/613009.html
Copyright © 2011-2022 走看看