zoukankan      html  css  js  c++  java
  • ASP.NET的简单数据绑定

    ASP.NET也可以将代码前置,不借助VS.NET的代码提示功能,也许能体会到更多的细节吧。简单数据绑定的关键一点就是利用<%# ... %>来调用函数,下图是要实现的功能:

    代码如下:

    <%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312" Debug="true"%>
    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.SqlClient" %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>简单数据绑定</title>
    <style type="text/css">
    h1,div {text-align:center; font-family:宋体; font-size:x-large; color:#CC0000}
    table {font-size:14px; color:black}
    .stdTextBox {text-align:center; background-color:#CCCCCC; color:#990000}
    
    </style>
    </head>
    <body bgcolor="ivory">
    
    <form runat="server">
    <h1>当前路径:<asp:Label runat="server" ID="lblPath"/></h1>
    <div>
    <table align="center">
    <tr>
    <th>编号</th><th>姓名</th><th>城市</th></tr>
    <td><asp:TextBox ID="txtID" CssClass="stdTextBox" runat="server" Text='<%#getData("CustomerID") %>'/></td>
    <td><asp:TextBox ID="txtName" CssClass="stdTextBox" runat="server" Text='<%#getData("CompanyName") %>'/></td>
    <td><asp:TextBox ID="txtTeam" CssClass="stdTextBox" runat="server" Text='<%#getData("City") %>'/></td>
    </table>
    <asp:LinkButton ID="btnPrev" Font-Size="17px" runat="server" Text="<<" onClick="movePrev"/>
    <asp:LinkButton ID="btnNext" Font-Size="17px" runat="server" Text=">>" onClick="moveNext"/>
    </div>
    </form>
    
    <script language="c#" runat="server">
    public void Page_Load(Object sender,EventArgs e)
    {
        this.lblPath.Text = Request.Url.ToString();
        if(!IsPostBack)
        {
            string strConn = "server=.;database=Northwind;uid=sa;pwd=millfox";
            DataSet ds = new DataSet();
            string strSelect = "SELECT CustomerID,CompanyName,City FROM Customers";
            SqlDataAdapter cmd = new SqlDataAdapter(strSelect,strConn);
            cmd.Fill(ds,"tempTable");
            this.txtID.Text = ds.Tables["tempTable"].Rows[0]["CustomerID"].ToString();
            this.txtName.Text = ds.Tables["tempTable"].Rows[0]["CompanyName"].ToString();
            this.txtTeam.Text = ds.Tables["tempTable"].Rows[0]["City"].ToString();
            
            Session["currentRecord"] = 0;
            Session["recordCount"] = ds.Tables["tempTable"].Rows.Count-1;
            Session["myDs"] = ds;
            ReFresh();
        }
        
    }
    
    public void ReFresh()
    {
        this.txtID.DataBind();
        this.txtName.DataBind();
        this.txtTeam.DataBind();
    }
    
    public void moveNext(Object sender,EventArgs e)
    {
        int i = (int)Session["currentRecord"];
        int total = (int)Session["recordCount"];
        if(i<total)
        {
            Session["currentRecord"] = i+1;
            ReFresh();
        }
    }
    
    public void movePrev(Object sender,EventArgs e)
    {
        int i = (int)Session["currentRecord"];
        if(i>0)
        {
            Session["currentRecord"] = i-1;
            ReFresh();
        }
    }
    
    public string getData(string colName)
    {
        DataSet ds = (DataSet)Session["myDs"];
        int i = (int)Session["currentRecord"];
        string temp = ds.Tables["tempTable"].Rows[i][colName].ToString();
        return temp;
    }
    </script>
    </body>
    </html>
  • 相关阅读:
    Nginx 学习笔记(一)如何配置一个安全的HTTPS网站服务器
    Ubuntu(16.04.2)学习笔记(一)如何解决dpkg: error processing install-info
    Linux 命令详解(八)Systemd 入门教程:实战篇
    Linux 命令详解(七)Systemd 入门教程:命令篇
    Linux 命令详解(六)Linux 守护进程的启动方法
    PHP7 学习笔记(四)PHP PSR-4 Autoloader 自动加载
    PHP7 学习笔记(三)关于PHP7如何安装调试工具Xdebug扩展以及Zephir的问题
    WorkerMan 入门学习之(三)基础教程-Timer类的使用
    WorkerMan 入门学习之(二)基础教程-Connection类的使用
    数字证书相关知识结构PKI/PMI基本概念、组成部分、工作原理
  • 原文地址:https://www.cnblogs.com/CoderWayne/p/4485078.html
Copyright © 2011-2022 走看看