[分享]gridview整行选择又不显示选择列 最简单的方法
很多人对gridview中的那个选择列,都不是很满意,很对客户也是对要点那个“选择”感觉很别扭,网上一般有两种方法可以实现整行选择的效果,
一种是利用这个选择列,加个效果而已
好处:代码改动小,实现简单
坏处:仍然必须带着那个“选择”的列
一种是加个模板列,利用模板列实现选择
好处:表现比较酷,可以使选择变成自己想要的样式
坏处:麻烦,对于仅仅改变这样一个东西,需要弄的地方很多
我懒,所以我一直用第一种,代码如下:
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add( "onmouseover ", "currentcolor=this.style.backgroundColor;this.style.backgroundColor= '#C0C0FF ';this.style.cursor= 'hand '; ");
//当鼠标移走时还原该行的背景色
e.Row.Attributes.Add( "onmouseout ", "this.style.backgroundColor=currentcolor ");
//选择任意处都选择
e.Row.Attributes.Add( "onClick ", "javascript:__doPostBack( ' " + GridView1.ID + " ', 'Select$ " + e.Row.RowIndex + " '); ");
}
就是在gridview的RowCreated事件里搞一下,很多人不愿意用,因为它仍然显示“选择”,其实,只要在前台的代码里面,把SelectText设置成空格就可以了
<asp:CommandField ShowSelectButton= "True " SelectText= " ">
<ItemStyle Width= "10px " />
</asp:CommandField>
这样,把这个选择行设置在整个gridview的第一列,留一点宽度,在整个表格的展现上都很漂亮,第一列也不顶在最左边了,整个效果也出来了,还可以正常的使用gridview自带的SelectedIndexChanged事件,多方便,一举好记得呢 :)
------解决方案--------------------LZ精神值得学习!
呵
------解决方案--------------------学习。。
------解决方案--------------------学习。。
------解决方案--------------------:)
------解决方案--------------------up
------解决方案--------------------^_^
------解决方案--------------------up
------解决方案--------------------学习