zoukankan      html  css  js  c++  java
  • <<深入剖析ASP.NET组件设计>>的一个辅助类

    这个书有很多缺失代码,以下是341页漏的一个ListBuilderHelper类,
    /// <summary>
        
    /// ListBuilderHelper 的摘要说明。
        
    /// </summary>

        public class ListBuilderHelper
        
    {
            
    private static string GenerateSelectID(Control owner)
            
    {
                
    return owner.UniqueID + "$select".Replace(":""_");
            }

            
    private static string GenerateSelectValue(Control owner)
            
    {
                
    return owner.UniqueID + "$SELECT_VALUE".Replace(":""_");
            }

            
    /// <summary>
            
    /// 取得内容的包装控件,即TR
            
    /// </summary>
            
    /// <param name="owner">容器</param>
            
    /// <param name="itemValue">内容值</param>
            
    /// <param name="index">第几个</param>
            
    /// <returns></returns>

            public static Control CreateWrapperItemControl(Control owner, string itemValue, int index)
            
    {
                HtmlTableRow tr 
    = new HtmlTableRow();
                
    string selectID = GenerateSelectID(owner);
                
    string postKey = GenerateSelectValue(owner);
                tr.Attributes.Add(
    "onmouseover",
                    
    string.Format("{0}_obj.pasp_HiLightItem(this,{1})",
                    owner.ClientID, index));
                tr.Attributes.Add(
    "onclick",
                    
    string.Format("{0}.value='{1}';{4}.pasp_ClickItem({2},'{3}')",
                    postKey, itemValue, selectID, itemValue, owner.ClientID 
    + "_obj"));

                owner.Controls.Add(tr); 
    //加入容器
                return tr;
            }

        }
  • 相关阅读:
    JetBrains下载历史版本
    php入门笔记
    Ajax获取服务器信息
    Ubuntu上安装PHP环境-mysql+apache+php-Linux操作系统
    Ubuntu彻底删除/卸载mysql,php,apache
    轻松理解JS基本包装对象
    JS事件委托
    浅谈JS事件冒泡
    JS闭包那些事
    浅谈JS的变量提升
  • 原文地址:https://www.cnblogs.com/xiaotaoliang/p/385309.html
Copyright © 2011-2022 走看看