default.aspx<%@ Page language="c#" Codebehind="Default.aspx.cs" AutoEventWireup="false" Inherits="CRM.Web.Default" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>EhrBank CRM</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
<LINK href="CSS/css.css" type="text/css" rel="stylesheet">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form runat="server">
<div id="ToolBar" runat="server">
<asp:hyperlink id="AddCustomer" runat="server" NavigateUrl="AddCustomer.aspx">创建客户</asp:hyperlink>&nbsp;&nbsp;
<asp:hyperlink id="AddCooperation" runat="server" NavigateUrl="AddCooperation.aspx">创建合作伙伴</asp:hyperlink>
</div>
<br>
<asp:datagrid id="CustomerList" runat="server" AutoGenerateColumns="False" CellPadding="4" BackColor="White"
BorderWidth="1px" BorderStyle="None" BorderColor="#CC9966" Width="704px" AllowSorting="True"
AllowPaging="True">
<SelectedItemStyle Font-Bold="True" ForeColor="#663399" BackColor="#FFCC66"></SelectedItemStyle>
<ItemStyle ForeColor="#330099" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#FFFFCC" BackColor="#990000"></HeaderStyle>
<FooterStyle ForeColor="#330099" BackColor="#FFFFCC"></FooterStyle>
<Columns>
<asp:HyperLinkColumn DataNavigateUrlField="f_ID" DataNavigateUrlFormatString="CustomerInfo.aspx?ID={0}"
DataTextField="f_Name" SortExpression="f_Name" HeaderText="客户名称"></asp:HyperLinkColumn>
<asp:BoundColumn DataField="f_DemandType" SortExpression="f_DemandType" HeaderText="业务需求"></asp:BoundColumn>
<asp:BoundColumn DataField="f_budgetRange" SortExpression="f_budgetRange" HeaderText="预算范围"></asp:BoundColumn>
<asp:BoundColumn DataField="f_ForeStartDate" SortExpression="f_ForeStartDate" HeaderText="预计时间" DataFormatString="{0:d}"></asp:BoundColumn>
<asp:BoundColumn DataField="f_Importance" SortExpression="f_Importance" HeaderText="重要程度"></asp:BoundColumn>
<asp:BoundColumn DataField="LinkMan" SortExpression="LinkMan" HeaderText="联系人"></asp:BoundColumn>
</Columns>
<PagerStyle HorizontalAlign="Right" ForeColor="#330099" BackColor="#FFFFCC" Mode="NumericPages"></PagerStyle>
</asp:datagrid>
<br>
请选择要显示的字段:<br>
<asp:CheckBox id="Name" runat="server" Text="客户名称" Checked="True"></asp:CheckBox>
<asp:CheckBox id="Require" Text="业务需求" runat="server" Checked="True"></asp:CheckBox>
<asp:CheckBox id="Budget" Text="预算范围" runat="server" Checked="True"></asp:CheckBox>
<asp:CheckBox id="ForeDate" Text="预计时间" runat="server" Checked="True"></asp:CheckBox>
<asp:CheckBox id="Importance" Text="重要程度" runat="server" Checked="True"></asp:CheckBox>
<asp:CheckBox id="LinkMan" Text="联系人" runat="server" Checked="True"></asp:CheckBox><br>
<asp:Button id="Choose" runat="server" Text="提交"></asp:Button>
</form>
</body>
</HTML>

解决方案 »

  1.   

    Default.aspx.csusing System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Data.SqlClient;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;
    using System.Configuration;namespace CRM.Web
    {
    /// <summary>
    /// _Default 的摘要说明。
    /// </summary>
    public class Default : System.Web.UI.Page
    {
    protected System.Web.UI.WebControls.DataGrid CustomerList;
    protected System.Web.UI.WebControls.HyperLink AddCustomer;
    protected System.Web.UI.WebControls.HyperLink AddUser;
    protected System.Web.UI.HtmlControls.HtmlGenericControl ToolBar;
    protected System.Web.UI.WebControls.CheckBox Name;
    protected System.Web.UI.WebControls.CheckBox LinkMan;
    protected System.Web.UI.WebControls.CheckBox Importance;
    protected System.Web.UI.WebControls.CheckBox ForeDate;
    protected System.Web.UI.WebControls.CheckBox Budget;
    protected System.Web.UI.WebControls.CheckBox Require;
    protected System.Web.UI.WebControls.HyperLink AddCooperation;
    protected System.Web.UI.WebControls.Button Choose;
    string ConnStr = ConfigurationSettings.AppSettings["ConnStr"]; private void Page_Load(object sender, System.EventArgs e)
    {
    if(!Page.IsPostBack)
    {
    if(Session["UserName"]==null)
    {
    Response.Redirect ("Login.aspx?Url=Default.aspx");
    }
    else if(Session["Role"].ToString()=="1")
    {
    ToolBar.Visible = true;
    }
    else
    {
    ToolBar.Visible = false;
    } CustomerList.DataSource = GetData();
    CustomerList.DataBind();
    }
    }

    #region GetData(...) 返回客户信息
    private DataTable GetData()
    {
    // 提取客户信息,如果是系统管理员,可以看到所有的客户,否则只能看到自己的客户
    SqlConnection sqlConn = new SqlConnection(ConnStr);
    string sql; 
    if(Session["Role"].ToString()=="1")
    {
    if(ViewState["sorting"]!=null)
    sql = "select * from View_MainCustomerInfo order by "+ViewState["sorting"].ToString()+" "+ViewState["sortdirection"].ToString()+"";
    else
    sql = "select * from View_MainCustomerInfo";
    }
    else
    {
    if(ViewState["sorting"]!=null)
    sql = "select * from View_MainCustomerInfo where f_UserID = "+Session["ID"].ToString()+"  order by "+ViewState["sorting"].ToString()+" "+ViewState["sortdirection"].ToString()+"";
    else
    sql = "select * from View_MainCustomerInfo where f_UserID = "+Session["ID"].ToString()+"";
    }
    SqlDataAdapter sqlAdapter = new SqlDataAdapter(sql,sqlConn); DataSet ds = new DataSet();
    sqlAdapter.Fill(ds, "TableName"); return ds.Tables[0];
    }
    #endregion #region Web 窗体设计器生成的代码
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// </summary>
    private void InitializeComponent()
    {    
    this.CustomerList.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.CustomerList_PageIndexChanged);
    this.CustomerList.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.CustomerList_SortCommand);
    this.Choose.Click += new System.EventHandler(this.Choose_Click);
    this.Load += new System.EventHandler(this.Page_Load); }
    #endregion

    #region Choose_Click 选择网格中需要显示的字段
    private void Choose_Click(object sender, System.EventArgs e)
    {
    if(Name.Checked)
    {
    CustomerList.Columns[0].Visible=true;
    }
    else
    {
    CustomerList.Columns[0].Visible=false;
    }
    if(Require.Checked)
    {
    CustomerList.Columns[1].Visible=true;
    }
    else
    {
    CustomerList.Columns[1].Visible=false;
    }
    if(Budget.Checked)
    {
    CustomerList.Columns[2].Visible=true;
    }
    else
    {
    CustomerList.Columns[2].Visible=false;
    }
    if(ForeDate.Checked)
    {
    CustomerList.Columns[3].Visible=true;
    }
    else
    {
    CustomerList.Columns[3].Visible=false;
    }
    if(Importance.Checked)
    {
    CustomerList.Columns[4].Visible=true;
    }
    else
    {
    CustomerList.Columns[4].Visible=false;
    }
    if(LinkMan.Checked)
    {
    CustomerList.Columns[5].Visible=true;
    }
    else
    {
    CustomerList.Columns[5].Visible=false;
    }
    }
    #endregion

    #region CustomerList_PageIndexChanged 客户列表分页
    private void CustomerList_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
    {
    CustomerList.CurrentPageIndex = e.NewPageIndex;
    CustomerList.DataSource = GetData();
    CustomerList.DataBind();
    }
    #endregion

    #region CustomerList_SortCommand 客户排序
    private void CustomerList_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
    {
    ViewState.Add("sorting",e.SortExpression);
    if (ViewState["sortdirection"]==null)
    ViewState.Add("sortdirection","ASC");
    else
    {
    if(ViewState["sortdirection"].ToString()=="ASC")
    ViewState["sortdirection"]="DESC";
    else
    ViewState["sortdirection"]="ASC";
    }
    CustomerList.DataSource = GetData();
    CustomerList.DataBind();
    }
    #endregion
    }
    }
      

  2.   

    1 & 2:
    <%@ Page Language="VB" AutoEventWireup="True" Debug="true"%>
    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.OleDb" %><html>
       <script runat="server">
         dim MyConnection as OleDbConnection      Sub Page_Load(sender As Object, e As EventArgs) 
          MyConnection = New OleDbConnection( "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" + Server.MapPath(".")+"/db/data2.mdb")          If Not IsPostBack Then 
         ViewState("sort") = "FAQID"   
                 BindGrid("FAQID")
              End If
          End Sub      Sub MyDataGrid_Page(sender as Object, e As DataGridPageChangedEventArgs) 
             MyDataGrid.CurrentPageIndex = e.NewPageIndex
             BindGrid(ViewState("sort"))
          End Sub      Sub BindGrid(sortdata) 
          Dim MyCommand As OleDbDataAdapter = new OleDbDataAdapter("SELECT * FROM [tblFAQ] ORDER BY "& sortdata &" ASC", MyConnection)
              Dim DS As DataSet = new DataSet()
              MyCommand.Fill(DS,"faq") 
              MyDataGrid.DataSource = DS.Tables("faq").DefaultView
              MyDataGrid.DataBind()
      lblRowCount.Text = "Total Rows:" & (ds.Tables(0).rows.count).ToString()
          End Sub   Sub SortDataGrid(sender As Object, e As DataGridSortCommandEventArgs) 
      If e.SortExpression = "FAQID" then 
                 BindGrid("FAQID") 
         ViewState("sort") = "FAQID"   
              ElseIf e.SortExpression = "ViewCount" then 
                 BindGrid("VIEWCOUNT") 
     ViewState("sort") = "VIEWCOUNT"   
              End If 
          End Sub
    </script>
    <form runat="server">
        <asp:Label id="lblRowCount" runat="server"/>
        <asp:DataGrid id="MyDataGrid" 
               AllowPaging="True" 
               PageSize="2" 
               OnPageIndexChanged="MyDataGrid_Page" 
               runat="server"
       AutoGenerateColumns="False"
       Width="400"
       AllowSorting="True"
       OnSortCommand="SortDataGrid">
               <HeaderStyle BackColor="Navy" ForeColor="White" Font-Size="13pt" Font-Bold="True" HorizontalAlign="Center" /> 
               <PagerStyle Mode="NumericPages" HorizontalAlign="Right" />
          <Columns>
             <asp:BoundColumn DataField="faqid" HeaderText="FAQID" SortExpression="FAQID"/>
             <asp:BoundColumn DataField="viewcount" HeaderText="VIEWCOUNT" SortExpression="ViewCount"/>
          </Columns>
          </asp:DataGrid>
    </form>
    3,分页后出现的“123456....”,我想让它只显示前10页?   那你就在SELECT語句中用TOP來取得10頁的數據顯示就可以了.
      

  3.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=B12283DE-DB20-4322-ACCC-12724442808A
      

  4.   

    删贴记录:
    --------------------
    回复人:nameldw(安安) () 信誉:100  2004-6-22 18:05:45 得分: 50 删除  
     
      1.http://dev.csdn.net/develop/article/22/22297.shtm  
    2.int  aa=dateset.Tables[0].rows.count  
    3.SELECT前10页  --------------------