gridview属性_GridView

gridview属性_GridViewGridView在生成HTML代码的时候会自动加上style=”border-collapse:collapse;”以及border=1,rules=”all”这些属性,这些在IE下都没什么影响,但是在FF下就会影响显示,style=”border-collapse:collapse;”;是由于设置了CellSpacing=”0″产生的,当设置CellSpacing=”1″后就没有,可以去掉sty

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

GridView在生成HTML代码的时候会自动加上style=”border-collapse:collapse;”以及border=1,rules=”all”这些属性,这些在IE下都没什么影响,但是在FF下就会影响显示,style=”border-collapse:collapse;”;是由于设置了CellSpacing=”0″产生的,当设置CellSpacing=”1″后就没有,可以去掉style=”border-collapse:collapse;”;默认情况下CellSpacing=”0″,所以默认情况下会有style=”border-collapse:collapse;”这个属性生成。GridLines=”Both”会带来border=1,rules=all这两个属性,设置GridLines=”None”后border=0,rules属性则不会出现。

MS默认的GridView生成HTML代码的方式本身就没有去兼容各种浏览器,只是特别照顾了自己的IE,其实MS已经给出了解决办法,那就是自己定义控件如何生成HTML代码,CSS控件适配器工具包新版发布 介绍如何配置自己的浏览器定义文件。

如何设置GridView让它在IE和FF下都能正常显示呢?下面会进行说明。

1.单元格都有边框线,效果如下:

<asp:GridViewID=”GridView1″ runat=”server” CellPadding=”3″GridLines=”None” BackColor=”Black”CellSpacing=”1″>

            <FooterStyleBackColor=”#C6C3C6″ ForeColor=”Black” />

            <RowStyleBackColor=”#ECF5FF” ForeColor=”Black” />

            <SelectedRowStyleBackColor=”#9471DE” Font-Bold=”True”ForeColor=”White” />

            <PagerStyleBackColor=”#C6C3C6″ ForeColor=”Black”HorizontalAlign=”Right” />

            <HeaderStyleBackColor=”#A6CBEF” Font-Bold=”True”ForeColor=”#404040″ BorderColor=”#A6CBEF” />

        </asp:GridView>

说明:GridLines=”ALL”,CellSpacing=”0″是造成FF和IE下显示不同的一个很大的原因;其实不进行设置border也是可以达到单元格表现出边框的样式。CellSpacing=”1″就控制了单元格之间的间隔是1px,通过设置table的背景和tr的背景来表现出单元格td的border,实际上td的border为0,这个看起来很像的border是table的背景,tr的背景仅仅是改变了td的背景,td之间的space则是根据table的背景显示的,这就是CellSpacing=”1″带来的border效果。这样在IE和FF下都能正常显示了。

 

2.只有横线,没有竖线的效果:

GridView样式如下设置:需要借助额外的css,Gridview自带的类似样式不兼容FF

<styletype=”text/css”>

    .table{border:solid 1px black}

    .table th{border-bottom:solid 1px black;}

    .table td{border-bottom:solid 1px black;}

    </style>

<asp:GridViewID=”GridView1″ CssClass=”table” runat=”server”CellPadding=”3″ GridLines=”None”BackColor=”#ECF5FF” CellSpacing=”0″>

            <FooterStyleBackColor=”#C6C3C6″ ForeColor=”Black” />

            <RowStyleBackColor=”#ECF5FF” ForeColor=”Black” />

            <SelectedRowStyleBackColor=”#9471DE” Font-Bold=”True”ForeColor=”White” />

            <PagerStyleBackColor=”#C6C3C6″ ForeColor=”Black”HorizontalAlign=”Right” />

            <HeaderStyleBackColor=”#A6CBEF” Font-Bold=”True”ForeColor=”#404040″ BorderColor=”#A6CBEF” />

        </asp:GridView>

3.只有竖线的效果:

更改上面的<styletype=”text/css”>

    .table{border:solid 1px black}

    .table th{border-right:solid 1px black;}

    .table td{border-right:solid 1px black;}

    </style>即可。

更改table样式为:

table{border:solid1px black}

    .table th{border:solid 1px black;}

    .table td{border:solid 1px black;}

可以实现第一种的显示效果,这才是真的

 

用CSS解决asp.net中Gridview边框样式问题

html标签中的bordercolor属性指定表格边框颜色之后,无论是表格的四个边框还是表格内部的单元格

边框颜色便都设置好了.但是在asp.net的gridview控件中,设置bordercolor之后,在生成的html代码

中是这样表示的:

<tableclass=”gridview_m” cellspacing=”0″ rules=”all”border=”1″ id=”ctl00_Content_GV_1″

style=”border-color:#93C2F1;border-collapse:collapse;”>

原来gridview中设置的bordercolor属性是css中的属性,其结果就是gridview的四个边框的颜色变了,

但是内部单元格的颜色却是灰色,而不是你指定的颜色.

网上有不少朋友讨论过这个问题,有一种解决方法是用代码给gridview添加真正的bordercolor属性

例如:

this.GridView1.Attributes.Add(“bordercolor”,”red”);

这样的缺点是不太灵活,如果需要用主题来控制界面样式

而代码中又有这样的语句的话,就不是很合适

利用css提供的机制,可以比较好的解决这个问题

举个例子

在主题中,将gridview的cssclass设置为gridview_m

<asp:GridViewrunat=”server” CssClass=”gridview_m” >

    <HeaderStyleCssClass=”girdview_head” />

    <RowStyleCssClass=”gridview_row” />

    <PagerStyleHorizontalAlign=”Center” />

</asp:GridView>

然后在css样式表中设置:

table.gridview_m

{

border-collapse:collapse;

border:solid1px #93c2f1;

width:98%;

font-size:10pt;

}

table.gridview_mtd,th

{

border-collapse:collapse;

border:solid1px #93c2f1;

font-size:10pt;

}

以上css样式中还有其他样式,主要就是这一句:table.gridview_mtd,th

将会给class=”gridview”的table中的th和td标签应用样式

这样就解决了gridview的边框问题

 

在gridview中实现隔行样式转换的方法

protectedvoid GridView1_RowDataBound(object sender, GridViewRowEventArgs e)   

{

//我们先设置当鼠标上去的时候他的背景色改变      

 e.Row.Attributes.Add(“onmouseover”,”c=this.style.backgroundColor;this.style.backgroundColor=’#ff6699′”);  

//下面我们再设置当鼠标离开后背景色再还原       

e.Row.Attributes.Add(“onmouseout”,”this.style.backgroundColor=c;”);       

/为特定的数改变行样式这也是在这个事件里面,因为这个事件是在数据被绑定的时候执行的     

 for (int i = 0; i < GridView1.Rows.Count;i++)       

{

//为了对全部数据行都有用,我们使用循环             //

stringlbl = Convert.ToString(DataBinder.eval_r(e.Row.DataItem,”state”));

//我们得取出行中state字段绑定的值,用他作为判断条件             //

if(lbl == “BB”)             if(e.Row.RowIndex % 2 == 1)            

{

//如果他的值等于BB,那么               

e.Row.BackColor= Color.LimeGreen;

//给当前行的背景色赋值   

}       

}   

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189675.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月10日 下午11:43
下一篇 2026年3月11日 上午7:22


相关推荐

  • IdeaVim 基本操作[通俗易懂]

    IdeaVim 基本操作[通俗易懂]IdeaVim基本操作安装插件ideaVim剪贴板与系统剪贴板同步CapsLock键映射为Esc键光标的移动安装插件File-Settings-Plugins,BrowseRepositories,输入ideavim,安装2.重启IntelliJIDEAideaVim剪贴板与系统剪贴板同步在ideavimrc文件中添加一行:setclipboard=unnamedplus,unnamed保存并退出:wq重启IntelliJIDEACaps

    2022年10月1日
    7
  • LayoutParams基本使用

    LayoutParams基本使用LayoutParams 是什么 LayoutParams 主要保存了一个 View 的布局参数 因此可以使用 LayoutParams 来改变布局参数从而达到 View 位置的效果 一般在自定义 View 的时候使用 LayoutParams 怎么用 如果父控件是 LinearLayout 需要使用 LinearLayout LayoutParams 代码如下 LinearLayout La

    2026年3月20日
    3
  • keras卷积层_keras实现全卷积神经网络

    keras卷积层_keras实现全卷积神经网络分组卷积在pytorch中比较容易实现,只需要在卷积的时候设置group参数即可比如设置分组数为2conv_group=nn.Conv2d(C_in,C_out,kernel_size=3,stride=3,padding=1,groups=2)但是,tensorflow中目前还没有分组卷积,只能自己手动编写分组卷积函数。在编写程序之前大家要先理解分组卷积的形式,也就是对特征图在通道上进行划分,例如设置group=3,对输入特征图通道划分成三组,输出特征图也要划分成3组,再对三组输入输出特

    2025年6月23日
    6
  • python用pandas读取csv文件_使用pandas读取csv文件的指定列方法

    python用pandas读取csv文件_使用pandas读取csv文件的指定列方法根据教程实现了读取 csv 文件前面的几行数据 一下就想到了是不是可以实现前面几列的数据 经过多番尝试总算试出来了一种方法 之所以想实现读取前面的几列是因为我手头的一个 csv 文件恰好有后面几列没有可用数据 但是却一直存在着 原来的数据如下 GreydeMac mini chapter06gre catdata csv1 name 01 coment 01 2 name 02 c

    2025年9月26日
    7
  • 稳压二极管(齐纳Zener二极管)的接法和应用详解

    稳压二极管(齐纳Zener二极管)的接法和应用详解http www elecfans com dianzichangs 201705295202 htmlhttp www elecfans com yuanqijian erjiguang 201801036103 html 稳压二极管如何接入电路 稳压二极管并联在电路中的 稳压二极管是反相接的 就是二极管负极接电源 正极接地 当加载在两端的电压超过稳压管的稳压值时 管子就会被击穿导通 从而起到稳压的作用的 当稳压管在反向接法时 当反向电压小于击穿电压时 反向电流很小 呈现的动态电

    2026年3月19日
    2
  • Linux安装Anaconda3过程详解

    Linux安装Anaconda3过程详解担心自己也忘记 所以顺便记录一下 当然 也方便大家也学会 Linux 安装 Anaconda 环境说明 Linux 腾讯云下的 CentOS7 6Anaconda 版本 Anaconda3 5 2 01 下载 1 1 去清华镜像站下载 上传到云端服务器上清华镜像站 https mirrors tuna tsinghua edu cn anaconda archive 下载的版本见下 下载 64 位的 Linux 版本上传到 Linux 上 我选择的路径为 usr local Anaconda 1

    2026年3月16日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号