各位大虾,可以提供点代码吗?

解决方案 »

  1.   

    这是基础的知识,网上比较多的.你自己google一下,一堆,
      

  2.   

    就是利用了dataGridview的几个事件来处理的.如pageindexchanged,itembound,itemcommand,等来处理
      

  3.   

    确实都是基础知识,网上搜一下吧.或是你在csdn里搜索一下可能都会有.
      

  4.   

    "dataGridview实现编辑,删除,和查看功能以及分页功能"
    这个可以用gridview的自带功能,也可以自己写代码
    楼上两位说得都有道理,这个网上有很多的
    可以到51aspx上找一些源码,参考一下
      

  5.   

    给你找了几个,看看先
    http://download.csdn.net/source/508587http://blog.csdn.net/shiluoguyan/archive/2007/03/20/1534821.aspxhttp://gridviewguy.com/ArticleDetails.aspx?articleID=271http://wengjinbao.cn/?tid=245
      

  6.   

    网上搜一下,有很多的
    而且一般讲asp.net 的书里都有讲
      

  7.   

    我是用SQL分页http://www.knowsky.com/339541.html 例如
    分页有两种SQL语句的写法,但性能不同。分别是:SELECT TOP 10 * FROM TAlarmTag where TagId not in (SELECT TOP 810 TagId FROM TAlarmTag order by TagId asc) order by TagId asc SELECT Top 10 * FROM TAlarmTag WHERE TagId > (SELECT MAX(TagId) FROM (SELECT TOP 810 TagId FROM TAlarmTag ORDER BY TagId asc) AS TEMP) order by TagId 以上两种写法得到的结果都是一样的,但后一种写法的性能更好,速度是前一种的2倍。(各运行1000次,并取平均值,再比较) 测试代码:long[] runtime = new long[1000];            for (int i = 0; i < 1000; i++)            {                using (SqlConnection connection = new SqlConnection(this.connectionStrings))                {                    connection.Open();                    SqlCommand command = connection.CreateCommand();                    command.CommandText = textBox1.Text;                    Stopwatch sw = new Stopwatch();                    sw.Start();                    SqlDataReader reader = command.ExecuteReader();                    object o;                    while (reader.Read())                    {                        o = reader[0];                    }                    sw.Stop();                    runtime[i] = sw.Elapsed.Ticks;                }            }            long average = runtime[0];            foreach (long one in runtime)            {                average = (one + average) / 2;            }            label1.Text = Convert.ToString(average); 
      

  8.   

    百度下 gridview72 绝技 马上就找到了.
      

  9.   

    老大们已经实现了!!推荐下分页功能吧?就是页面上的分页功能怎么实现!
    看了下那个aspnetpager控件,感觉比较麻烦,要按照他的要求写存储过程,我想自己能够掌握这些,怎么写?
    大侠给点思路~~!
      

  10.   

    看到这问题......
    同感呀......
    自己也新手......
    这几天刚整了一套简单的法子,之前自己也是一头雾水...首先数据库建表必须有主键。
    其次,gridview数据绑定用sqldatasource
          说明:asp.net对gridview功能的支持(例如:编辑、修改等等),根据数据源的不同功能相应的也不同,
           如果是手写数据源,不采用sqldatasource,则编辑删除需要自己写。  俺感觉是新手,先自己有个办法把
           功能做出来再说。
           有主键,则sqldatasource配置数据源的时候,高级--生成insert,update....(必须有)然后,gridview绑定sqldatasource里面的编辑和删除就可以直接用了.....还不明白,再留言吧照着做一边应该没问题的了,我就这么弄的....
      

  11.   

    其实不难用,你要是自己编写分页方法或控件才难,我介绍一下方法:(1)先到网上下载aspnetpager控件,其实就一个dll,很小的(2)打开VS2005,“工具”-“选择工具箱”-在“.net framework 组建”中点击“浏览”-选择刚才下载的dll(3)然后你就会在工具箱中看到AspNetPager,直接拖过去(4)在代码隐藏文件(****.cs)中的gridview的数据绑定事件中这样写        AspNetPager1.RecordCount = 你所读取的数据有多少列;
            PagedDataSource pds = new PagedDataSource();        pds.DataSource = 本来绑定到gridview的数据现在绑定到这里;
            pds.AllowPaging = true;
            pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1;
            pds.PageSize = AspNetPager1.PageSize;        gridview.DataSource = pds;
            gridview.DataBind();(5)完成,最后在慢慢调样式就行了
      

  12.   

    给你个参考: SqlConnection sqlcon;
        SqlCommand sqlcom;
        string strCon = "Data Source=(local);Database=数据库名;Uid=帐号;Pwd=密码";
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                bind();
            }
        }
        protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            GridView1.EditIndex = e.NewEditIndex;
            bind();
        }//删除
        protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            string sqlstr = "delete from 表 where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
            sqlcon = new SqlConnection(strCon);
            sqlcom = new SqlCommand(sqlstr,sqlcon);
            sqlcon.Open();
            sqlcom.ExecuteNonQuery();
            sqlcon.Close();
            bind();
        }//更新
        protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            sqlcon = new SqlConnection(strCon);
            string sqlstr = "update 表 set 字段1='"
                + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',字段2='"
                + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',字段3='"
                + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where id='" 
                + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
            sqlcom=new SqlCommand(sqlstr,sqlcon);
            sqlcon.Open();
            sqlcom.ExecuteNonQuery();
            sqlcon.Close();
            GridView1.EditIndex = -1;
            bind();
        }//取消
        protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
        {
            GridView1.EditIndex = -1;
            bind();
        }//绑定
        public void bind()
        {
            string sqlstr = "select * from 表";
            sqlcon = new SqlConnection(strCon);
            SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
            DataSet myds = new DataSet();
            sqlcon.Open();
            myda.Fill(myds, "表");
            GridView1.DataSource = myds;
            GridView1.DataKeyNames = new string[] { "id" };//主键
            GridView1.DataBind();
            sqlcon.Close();
        }
      

  13.   


    pds.DataSource = 本来绑定到gridview的数据现在绑定到这里;
    我将datatable帮定时出错了。错误一下:
    错误 1 无法将类型“System.Data.DataTable”隐式转换为“System.Collections.IEnumerable”。存在一个显式转换(是否缺少强制转换?) C:\Documents and Settings\lijihuan\桌面\dd\Default.aspx.cs 34 26 C:\...\dd\
      

  14.   

    我在官网上是看到这样用的~~!
    <%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
    <%@Import NameSpace="System.Data"%>
    <%@Import NameSpace="System.Data.SqlClient"%>
    <script runat="server" Language="C#">
    void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                int totalOrders = (int)SqlHelper.ExecuteScalar(CommandType.StoredProcedure, "P_GetOrderNumber");
                AspNetPager1.RecordCount = totalOrders;
                bindData();
            }
        } void bindData()
        {
            Repeater1.DataSource = SqlHelper.ExecuteReader(CommandType.StoredProcedure,"P_GetPagedOrders2005",
                new SqlParameter("@startIndex", AspNetPager1.StartRecordIndex),
                new SqlParameter("@pageSize", AspNetPager1.PageSize));
            Repeater1.DataBind();
        } void AspNetPager1_PageChanged(object src, EventArgs e)
        {
            bindData();
        }
    </script>
    <HTML><HEAD>
    <TITLE> AspNetPager Samples </TITLE>
    <META NAME="Author" CONTENT="Webdiyer (www.webdiyer.com)">
    </HEAD><BODY>
    <form runat="server">
            <asp:Repeater ID="Repeater1" runat="server">
            <HeaderTemplate>
            <table width="100%" border="1" cellspacing="0" cellpadding="4" style="border-collapse:collapse">
            <tr style="backGround-color:#CCCCFF"><th style="width:15%"><asp:Literal ID="Literal1" runat="server" Text="<%$Resources:LocalizedText,orderid%>" /></th><th style="width:15%"><asp:Literal ID="Literal3" runat="server" Text="<%$Resources:LocalizedText,orderdate%>" /></th><th style="width:30%"><asp:Literal ID="Literal5" runat="server" Text="<%$Resources:LocalizedText,companyname%>" /></th><th style="width:20%"><asp:Literal ID="Literal2" runat="server" Text="<%$Resources:LocalizedText,customerid%>" /></th><th style="width:20%"><asp:Literal ID="Literal4" runat="server" Text="<%$Resources:LocalizedText,employeename%>" /></th></tr>
            </HeaderTemplate>
            <ItemTemplate>
            <tr style="background-color:#FAF3DC">
            <td><%#DataBinder.Eval(Container.DataItem,"orderid")%></td>
            <td><%#DataBinder.Eval(Container.DataItem,"orderdate","{0:d}")%></td>
            <td><%#DataBinder.Eval(Container.DataItem, "companyname")%></td>
            <td><%#DataBinder.Eval(Container.DataItem,"customerid")%></td>
            <td><%#DataBinder.Eval(Container.DataItem,"employeename")%></td>
            </tr>
            </ItemTemplate>
            <FooterTemplate>
            </table>
            </FooterTemplate>
            </asp:Repeater>
      <webdiyer:AspNetPager ID="AspNetPager1" runat="server" Width="100%" HorizontalAlign="right" PageSize="8" OnPageChanged="AspNetPager1_PageChanged">
            </webdiyer:AspNetPager>
            </form>
    </BODY>
    </HTML>
     
          
    该示例所用的Sql Server存储过程代码如下(仅适用于SQL Server 2005):CREATE PROCEDURE P_GetPagedOrders2005
        @startIndex INT, 
        @pageSize INT 
    AS
    begin
    WITH orderList AS ( 
    SELECT ROW_NUMBER() OVER (ORDER BY O.orderid DESC)AS Row, O.orderid,O.orderdate,O.customerid,C.CompanyName,E.FirstName+' '+E.LastName as EmployeeName 
    from orders O
    left outer join Customers C
    on O.CustomerID=C.CustomerID
    left outer join Employees E
    on O.EmployeeID=E.EmployeeID)SELECT orderid,orderdate,customerid,companyName,employeeName
    FROM orderlist
    WHERE Row between @startIndex and @startIndex+@pageSize-1
    end