开发者

paging and sorting in grid view

i have a code performing paging and sorting in grid view.

(bing_grid is user defined function)

public void bind_grid()
    {
        con = new SqlConnection();
        con.ConnectionString = "Data Source=STIRAPC105;InitialCatalog=anitha;Integrated Security=True";
        con.Open();

        SqlDataAdapter sqa = new SqlDataAdapter("select * from employees", con);
        DataSet ds = new DataSet();
        sqa.Fill(ds);
        DataTable mytab = ds.Tables[0];

        GridView1.DataSource = mytab;
        GridView1.DataBind();
        //con.Close();

    }

code for paging

    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView1.PageIndex = e.NewPageIndex;

        bind_grid();

    }

code for sorting

    protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
    {

        DataTable dt = GridView1.DataSource as DataTable;
        if (dt != null)
        {
          开发者_JS百科  DataView dataview = new DataView(dt);
            dataview.Sort = e.SortExpression + " " + sort_grid(e.SortDirection);
            GridView1.DataSource = dataview;
            GridView1.DataBind();
        }
    }

user defined code for sorting

public string sort_grid()
    {
        string newSortDirection = String.Empty;

        switch (sortDirection)
        {
            case SortDirection.Ascending:
                newSortDirection = "ASC";
                break;

            case SortDirection.Descending:
                newSortDirection = "DESC";
                break;
        }

        return newSortDirection;
    }

paging works, Errors was:

1. "no overload for method 'sort_grid' takes 1 argument" (dataview.Sort = e.SortExpression + " " + sort_grid(e.SortDirection);)

2.The name 'sortDirection does not exist in the current context. (switch (sortDirection))

Help me friends.


this method:

public string sort_grid()

takes no arguments but you are trying to call it with e.SortDirection:

dataview.Sort = e.SortExpression + " " + sort_grid(e.SortDirection);

You must change the signature of sort_grid() to

sort_grid(SortDirection sortDirection)

This will also solve your second problem, which you are trying to use sortDirection variable, before declaring it in the method sort_grid.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜