C# 如何在分页-GridView PagerTemplate中突出显示当前编号?

C# 如何在分页-GridView PagerTemplate中突出显示当前编号?,c#,asp.net,C#,Asp.net,这是我当前在GridView中的设计,单元格在悬停时变成橙色,这是通过使用css实现的。但我的问题是,如果单元格背景颜色是活动的,我如何更改它 图片: HTML代码:(仅GridView) PopulateGridView public void PopulateGridView() { String constring = System.Configuration.ConfigurationManager.ConnectionStrings["sqlconnect"].ToString

这是我当前在GridView中的设计,单元格在悬停时变成橙色,这是通过使用css实现的。但我的问题是,如果单元格背景颜色是活动的,我如何更改它

图片:

HTML代码:(仅GridView)

PopulateGridView

public void PopulateGridView()
{
    String constring = System.Configuration.ConfigurationManager.ConnectionStrings["sqlconnect"].ToString();
    MySqlConnection con = new MySqlConnection(constring);
    using (MySqlCommand cmd = new MySqlCommand("SELECT * FROM tabletester"))
    {
        cmd.CommandType = CommandType.Text;
        cmd.Connection = con;
        con.Open();
        MySqlDataReader reader = cmd.ExecuteReader();
        DataTable dt = new DataTable();
        dt.Load(reader);

        con.Close();

        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
}
中继器\u项命令

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        PopulateGridView();
    }
}
protected void Repeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    if (e.CommandName == "Page")
    {
        GridView1.PageIndex = Convert.ToInt32(e.CommandArgument);
        GridView1.DataBind();
        PopulateGridView();
    }
}
protected void Repeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    LinkButton lnkPageNumber = new LinkButton();
    System.Int32 pageNumber = (System.Int32)e.Item.DataItem;

    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        lnkPageNumber = (LinkButton)e.Item.FindControl("lnkPageNumber");
        lnkPageNumber.Text = pageNumber.ToString();
        lnkPageNumber.CommandArgument = (pageNumber - 1).ToString();
    }
}
protected void Repeater_Load(object sender, EventArgs e)
{
    Repeater Repeater = (Repeater)sender;
    Repeater.DataSource = Enumerable.Range(1, GridView1.PageCount);
    Repeater.DataBind();
}
中继器\u ItemDataBound

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        PopulateGridView();
    }
}
protected void Repeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    if (e.CommandName == "Page")
    {
        GridView1.PageIndex = Convert.ToInt32(e.CommandArgument);
        GridView1.DataBind();
        PopulateGridView();
    }
}
protected void Repeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    LinkButton lnkPageNumber = new LinkButton();
    System.Int32 pageNumber = (System.Int32)e.Item.DataItem;

    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        lnkPageNumber = (LinkButton)e.Item.FindControl("lnkPageNumber");
        lnkPageNumber.Text = pageNumber.ToString();
        lnkPageNumber.CommandArgument = (pageNumber - 1).ToString();
    }
}
protected void Repeater_Load(object sender, EventArgs e)
{
    Repeater Repeater = (Repeater)sender;
    Repeater.DataSource = Enumerable.Range(1, GridView1.PageCount);
    Repeater.DataBind();
}
中继器负载

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        PopulateGridView();
    }
}
protected void Repeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    if (e.CommandName == "Page")
    {
        GridView1.PageIndex = Convert.ToInt32(e.CommandArgument);
        GridView1.DataBind();
        PopulateGridView();
    }
}
protected void Repeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    LinkButton lnkPageNumber = new LinkButton();
    System.Int32 pageNumber = (System.Int32)e.Item.DataItem;

    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        lnkPageNumber = (LinkButton)e.Item.FindControl("lnkPageNumber");
        lnkPageNumber.Text = pageNumber.ToString();
        lnkPageNumber.CommandArgument = (pageNumber - 1).ToString();
    }
}
protected void Repeater_Load(object sender, EventArgs e)
{
    Repeater Repeater = (Repeater)sender;
    Repeater.DataSource = Enumerable.Range(1, GridView1.PageCount);
    Repeater.DataBind();
}

您可以在
Repeater\u ItemDataBound

if (e.Item.ItemIndex == GridView1.PageIndex)
{
    lnkPageNumber.ForeColor = Color.Red;
}
也就是说,您现在知道GridView有内置的分页系统吗?比你正在做的过于复杂的事情容易得多。以下是所有代码:

ASPX


就是这样。功能性寻呼系统所需的所有代码。

我理解,但我必须包括“第一个”、“上一个”、“下一个”和“最后一个”按钮,这就是我选择此路线的原因。为了便于设计,我必须将页码包含到表格单元格中。然后看看我的答案,它显示了一些标准寻呼机选项以及如何自定义:。但我的第一个答案应该回答你的问题。