ASP.NET中数据控件中的LinkButton控件点击时更换颜色

Posted 暖枫无敌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET中数据控件中的LinkButton控件点击时更换颜色相关的知识,希望对你有一定的参考价值。

在一些网站上常看见如上图的效果,点击的改变颜色,换一个点击,原先的颜色恢复。


<asp:DataList ID="DataList1" runat="server" RepeatDirection="Horizontal" RepeatColumns="5" SelectedIndex="0">
     <SelectedItemStyle BackColor="Fuchsia" />
     <ItemTemplate>
         <asp:LinkButton ID="LinkButton1" runat="server"  CommandArgument='<%#Eval("area") %>' CommandName="Select"  OnClick="LinkButton1_Click">
                <%#Eval("area") %>
         </asp:LinkButton>  
    </ItemTemplate>
</asp:DataList>

1.设置LinkButton的CommandName属性为Select,如:

<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Select"  οnclick="LinkButton1_Click">
        <%#Eval("area")%>
</asp:LinkButton>



2.在DataList1的SelectedIndexChanged事件中,将点中的行号赋值给ViewState["no"]


  protected void DataList1_SelectedIndexChanged(object sender, EventArgs e)
  
      ViewState["no"] = DataList1.SelectedIndex.ToString();
      DataList1.DataBind();
  



3.DataList1的ItemDataBound事件中设置颜色
  protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
  
        LinkButton linbtn = (LinkButton)e.Item.FindControl("LinkButton1");
       linbtn.ForeColor = System.Drawing.Color.Blue;
       if (ViewState["no"] != null)
       
            if (e.Item.ItemIndex == Convert.ToInt16(ViewState["no"]))
            linbtn.ForeColor = System.Drawing.Color.Red;
       
  



以上是关于ASP.NET中数据控件中的LinkButton控件点击时更换颜色的主要内容,如果未能解决你的问题,请参考以下文章

asp.net 在Repeater中如何隐藏linkbutton?

ASP.NET分页控件

在ASP.net(C#)中用LinkButton控件实现文件附件的下载,要求点击按钮之后,可直接下载保存

在引导模式主体中动态添加的 asp.net 按钮/链接按钮 web 控件不会回发

ASP.NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突方法

在VS2013 ASP.NET中如何用BulletedList连接SQL数据库