Asp.net GridView 사용 대전(페이지 별 구현)

6232 단어 Asp.netGridView
GridView 자체 페이지 기능 구현:
GrdView 페이지 를 나 누 는 기능 을 수행 하려 면 다음 과 같 습 니 다.1.GrdView 컨트롤 의 AllowPaging 속성 을 true 로 변경 합 니 다.2.GrdView 컨트롤 의 PageSize 속성 을 임 의 수치(기본 값 10)로 변경 합 니 다.3.GrdView 컨트롤 의 PageSetting->Mode 를 Numeric 등(기본 값 Numeric)으로 변경 합 니 다.이 속성 은 페이지 스타일 입 니 다.GridView 속성 이 설정 되 어 있 습 니 다.페이지 에서 도 페이지 스타일 을 볼 수 있 습 니 다.
지금부터 페이지 나 누 기 기능 을 실현 합 니 다.
1.뒤에 추가,OnPageIndexChanging="GridView 1PageIndexChanging"2,대응 하 는 aspx.cs 에 추가:    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)    {        GridView1.PageIndex = e.NewPageIndex;        InitPage(); //GridView 데 이 터 를 다시 연결 하 는 함수    }3、GridView1.PageIndex = e.NewPageIndex;끝나 고 GridView 다시 연결 해 주세요.
GridView 에 CheckBox 열 을 추가 하여 전체 선택/모든 취소 기능 을 수행 합 니 다.
먼저 GridView 는 모드 를 편집 하고 템 플 릿 에 CheckBox 컨트롤 을 추가 한 다음 에 열 필드 를 Template Filed배경 코드 로 변환 합 니 다.

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class Default5 : System.Web.UI.Page
{
    SqlConnection sqlcon;
    string strCon = "Data Source=(local);Database= ;Uid=sa;Pwd=sa";
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            bind();
        }
    }
    protected void CheckBox2_CheckedChanged(object sender, EventArgs e)
    {
        for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
        {
            CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
            if (CheckBox2.Checked == true)
            {
                cbox.Checked = true;
            }
            else
            {
                cbox.Checked = false;
            }
        }
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        sqlcon = new SqlConnection(strCon);
        SqlCommand sqlcom;
        for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
        {
            CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
            if (cbox.Checked == true)
            {

                string sqlstr = "delete from where ='" + GridView1.DataKeys[i].Value + "'";
                sqlcom = new SqlCommand(sqlstr, sqlcon);
                sqlcon.Open();
                sqlcom.ExecuteNonQuery();
                sqlcon.Close();
            }
        }
        bind();
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        CheckBox2.Checked = false;
        for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
        {
            CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
            cbox.Checked = false;
        }
    }
    public void bind()
    {
        string sqlstr = "select top 5 * from ";
        sqlcon = new SqlConnection(strCon);
        SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
        DataSet myds = new DataSet();
        sqlcon.Open();
        myda.Fill(myds, "tb_Member");
        GridView1.DataSource = myds;
        GridView1.DataKeyNames = new string[] { " " };
        GridView1.DataBind();
        sqlcon.Close();
    }
}

프론트 의 주요 코드:

<asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="False"
                        CellPadding="3" Font-Size="9pt" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px">
                        <FooterStyle BackColor="White" ForeColor="#000066" />
                        <Columns>
                             <asp:TemplateField>
                                <ItemTemplate>
                                    <asp:CheckBox ID="CheckBox1" runat="server" />
                                </ItemTemplate>
                            </asp:TemplateField>
                             <asp:BoundField DataField=" " HeaderText=" ID" SortExpression=" " />
                            <asp:BoundField DataField=" " HeaderText=" " SortExpression=" "/>

                            <asp:BoundField DataField=" " HeaderText=" " SortExpression=" "/>

                        </Columns>
                        <RowStyle ForeColor="#000066" />
                        <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
                        <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
                    </asp:GridView>
                     <asp:CheckBox ID="CheckBox2" runat="server" AutoPostBack="True" Font-Size="9pt" OnCheckedChanged="CheckBox2_CheckedChanged"
                        Text=" " />
                    <asp:Button ID="Button1" runat="server" Font-Size="9pt" Text=" " onClick="Button1_Click" />
                    <asp:Button ID="Button2" runat="server" Font-Size="9pt" Text=" " onClick="Button2_Click" />

좋은 웹페이지 즐겨찾기