zoukankan      html  css  js  c++  java
  • 使用自定义的数据源进行DataGrid控件的数据绑定

     

    自定义的集合类
    /// <summary>
     /// Collection 的摘要说明。
     /// </summary>
     public class Collection : System.Collections.CollectionBase
     {
      public Collection()
      {
       for(int i = 0;i < 10;i++)
       {
        base.InnerList.Add(new Element(i,string.Format("a[{0}]",i)));
       }
      }
     }

    集合元素类 
    public class Element
     {
      private string name;
      public string ValueName
      {
       get{return name;}
      }
      private int valu;
      public int Value
      {
       get{return valu;}
      }
      public Element(int val,string nam)
      {
       name = nam;
       valu = val;
      }
     }

    aspx的后置代码
    /// <summary>
     /// WebForm1 的摘要说明。
     /// </summary>
     public class WebForm1 : System.Web.UI.Page
     {
      protected System.Web.UI.WebControls.DataGrid DataGrid1;
     
      private void Page_Load(object sender, System.EventArgs e)
      {
       DataGrid1.DataSource = new Collection();
       DataGrid1.DataBind();
      }

      #region Web 窗体设计器生成的代码
      override protected void OnInit(EventArgs e)
      {
       //
       // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
       //
       InitializeComponent();
       base.OnInit(e);
      }
      
      /// <summary>
      /// 设计器支持所需的方法 - 不要使用代码编辑器修改
      /// 此方法的内容。
      /// </summary>
      private void InitializeComponent()
      {   
       this.Load += new System.EventHandler(this.Page_Load);

      }
      #endregion
     }

    aspx页的html代码
     <body MS_POSITIONING="FlowLayout">
     <form id="Form1" method="post" runat="server">
      <asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False" Width="224px">
        <Columns>
         <asp:TemplateColumn HeaderText="名称">
          <ItemTemplate>
           <asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.ValueName") %>'>
           </asp:Label>
          </ItemTemplate>
          <EditItemTemplate>
           <asp:TextBox runat="server" Text='<%# DataBinder.Eval(Container, "DataItem") %>'>
           </asp:TextBox>
          </EditItemTemplate>
         </asp:TemplateColumn>
         <asp:TemplateColumn HeaderText="数字">
          <ItemTemplate>
           <asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Value") %>'>
           </asp:Label>
          </ItemTemplate>
          <EditItemTemplate>
           <asp:TextBox runat="server" Text='<%# DataBinder.Eval(Container, "DataItem") %>'>
           </asp:TextBox>
          </EditItemTemplate>
         </asp:TemplateColumn>
        </Columns>
       </asp:DataGrid>
      </form>
     </body>
    </HTML>

  • 相关阅读:
    数据结构之fhq-treap
    [AtCoder Regular Contest 096 E] Everything on It 解题报告 (第二类斯特林数+容斥原理)
    指纹识别人脸识别 iOS
    HTTP协议的8种请求类型介绍
    获取已安装app的bundle id
    iOS生成Bundle包及使用
    为什么说Objective-C是一门动态的语言?
    引用外部静态库(.a文件)时或打包.a时,Category方法无法调用。崩溃
    代码混淆 iOS
    HDU 1695 GCD(莫比乌斯反演)
  • 原文地址:https://www.cnblogs.com/asyuras/p/165321.html
Copyright © 2011-2022 走看看