zoukankan      html  css  js  c++  java
  • DropDownList DataBind事件到底做了什么

    首先先使用DropDownList   DropDownList的绑定的时候,我们有两种方式

    1

    ddl.DataSource = Enum<Spectial>.AsEnumerable().Select(s => new ListItem(s.GetText(), s.GetValue().ToString())).ToList();

    ddl.DataTextField = "";

    ddl.DataValueField = "";

    ddl.DataBind();

    2

    ddl.Items.Clear();
    List<ListItem> lis = Enum<Spectial>.AsEnumerable().Select(s => new ListItem(s.GetText(), s.GetValue().ToString())).ToList();
    foreach (ListItem li in lis)
    ddl.Items.Add(li);

    所以 DropDownList DataBind() 事件  其实就是给Items赋值。

    不同点1 :使用第一种方式时,是会触发DataBound()事件, 第二种不会触发这个事件。

    为什么要使用第二种方式尼?  因为公司为了方便,写了一个扩展方法,一行代码就可以绑定。

    如:ddlRegion.DataBind(Enum<Region>.AsEnumerable().ToList().Select(s => new ListItem(s.GetFullName(), s.GetValue().ToString())), ControlDefine.LISTITEM_SELECT);

    不同点2 : 第一种方式DropDownList  绑定的时候,还要 指定DataTextField,DataValueField 。

    第二种方式不需要指定。

    总结:  建议使用vs自带 的绑定方式。 

  • 相关阅读:
    索引信息统计
    删除脚本
    归档脚本
    SQL2005四个排名函数(row_number、rank、dense_rank和ntile)的比较
    用js输出同样字符出现的次数
    grid布局
    统计字符出现的次数
    百度地图
    For each...in,For...in ,For...of的Examples和Explanation
    Object的起源
  • 原文地址:https://www.cnblogs.com/goodred/p/4022353.html
Copyright © 2011-2022 走看看