Please start any new threads on our new
site at https://forums.sqlteam.com. We've got lots of great SQL Server
experts to answer whatever question you can come up with.
Author |
Topic |
OBINNA_EKE
Posting Yak Master
234 Posts |
Posted - 2006-10-04 : 09:34:40
|
I have a Gridview with TEMPLATEFIELD, Sorting & Paging won't work why pls helpusing 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.Drawing;using System.Data.SqlClient;using System.Web.Caching;public partial class _Default : System.Web.UI.Page{ private string AccessConnectionString() { string accessDatabasePath = Server.MapPath("~/App_Data/biblio.mdb"); return String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};", accessDatabasePath); } private string GridViewSortDirection { get { return ViewState["SortDirection"] as string ?? "DESC"; } set { ViewState["SortDirection"] = value; } } private string GridViewSortExpression { get { return ViewState["SortExpression"] as string ?? string.Empty; } set { ViewState["SortExpression"] = value; } } private string GetSortDirection() { switch (GridViewSortDirection) { case "ASC": GridViewSortDirection = "DESC"; break; case "DESC": GridViewSortDirection = "ASC"; break; } return GridViewSortDirection; } protected void Page_Load(object sender, EventArgs e) { object CacheDataSetEmployees = (DataSet)Cache.Get("CacheDataSetEmployees"); if (CacheDataSetEmployees == null) { Cache["SqlPubsEmployees"] = "SomeValue"; string[] keys = new String[1]; keys[0] = "SqlPubsEmployees"; DataSet ds = new DataSet(); SqlConnection MySqlConn = new SqlConnection("Data Source=SQL01;Initial Catalog=POMACS;Integrated Security=True"); SqlDataAdapter MySda = new SqlDataAdapter("SELECT top 20 SubCustomerID, SerialNo, WarrantyStart, RecordID,IsCool FROM tEquipments", MySqlConn); MySda.Fill(ds, "Employee"); GridView1.DataSource = ds.Tables["Employee"]; CacheDependency MyDependency = new CacheDependency(null, keys); Cache.Insert("CacheDataSetEmployees", ds, MyDependency); MySqlConn.Close(); CacheStatus.Text = "New Version Created"; } else { CacheStatus.Text = "Cached Version Used"; GridView1.DataSource = CacheDataSetEmployees; } GridView1.PageSize = 5; GridView1.DataBind(); } protected DataView SortDataTable(DataTable dataTable, bool isPageIndexChanging) { if (dataTable != null) { DataView dataView = new DataView(dataTable); if (GridViewSortExpression != string.Empty) { if (isPageIndexChanging) { dataView.Sort = string.Format("{0} {1}", GridViewSortExpression, GridViewSortDirection); } else { dataView.Sort = string.Format("{0} {1}", GridViewSortExpression, GetSortDirection()); } } return dataView; } else { return new DataView(); } } protected void GridView1_DataBound(Object sender, System.EventArgs e) { String selectedValue = (String)ViewState["SelectedValue"]; if (selectedValue == null) { return; } foreach (GridViewRow row in GridView1.Rows) { String keyValue = GridView1.DataKeys[row.RowIndex].Value.ToString(); if (keyValue == selectedValue) { GridView1.SelectedIndex = row.RowIndex; } } } protected void GridView1_SelectedIndexChanged(Object sender, System.EventArgs e) { if (GridView1.SelectedIndex != -1) { ViewState["SelectedValue"] = GridView1.SelectedValue; } } protected void GridView1_PageIndexChanging(Object sender, System.Web.UI.WebControls.GridViewPageEventArgs e) { GridView1.SelectedIndex = -1; } protected void GridView1_Sorting(Object sender, System.Web.UI.WebControls.GridViewSortEventArgs e) { GridView1.SelectedIndex = -1; }}************************************************<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server"> <title>Untitled Page</title></head><body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" CellPadding="3" OnSorting="GridView1_Sorting" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" OnPageIndexChanging="GridView1_PageIndexChanging" HeaderStyle-BackColor="#707070" HeaderStyle-ForeColor="#FFFFFF" EditRowStyle-BackColor="Yellow" PagerSettings-Position="TopAndBottom" PagerSettings-Mode="NextPreviousFirstLast" PagerSettings-FirstPageText="First" PagerSettings-PreviousPageText="Prev" PagerSettings-NextPageText="Next" PagerSettings-LastPageText="Last" PagerStyle-BackColor="#E0E0E0" PagerStyle-HorizontalAlign="Center" DataKeyNames="RecordID"> <Columns> <asp:BoundField DataField="RecordID" ReadOnly="True" HeaderText="Number" ItemStyle-VerticalAlign="Top"/> <asp:TemplateField HeaderText="Type" SortExpression="SerialNo" ItemStyle-VerticalAlign="Top"> <ItemTemplate> <asp:Label ID="Label1" Text='<%# Eval("SerialNo") %>' Runat="Server"/> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Delete"><ItemTemplate> <asp:Button ID="btnDelete" Text="Delete" runat="server" OnClientClick="return confirm('Are you sureyou want to delete this record?');"CommandName="Delete" /></ItemTemplate></asp:TemplateField> <asp:CheckBoxField DataField="IsCool" ReadOnly="True" HeaderText="Sale" ItemStyle-VerticalAlign="Top"/> </Columns> </asp:GridView> <asp:Label ID="CacheStatus" Text="" runat="server" /> </div> </form></body></html>If it is that easy, everybody will be doing it |
|
|
|
|
|
|