加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – asp:Gridview&asp:表格生成border>“0”属

发布时间:2020-12-16 09:53:23 所属栏目:asp.Net 来源:网络整理
导读:我知道这是一个已经在.NET 4.0中修复的问题,但是,升级我们的框架还不是一个选择.很快,但还没有.暂时我使用的是.NET 3.5. 正如我在许多其他帖子中看到的那样,这是一个非常常见的问题.似乎没有人真正说出为什么这是一个问题,这就是为什么似乎许多答案似乎没有
我知道这是一个已经在.NET 4.0中修复的问题,但是,升级我们的框架还不是一个选择.很快,但还没有.暂时我使用的是.NET 3.5.

正如我在许多其他帖子中看到的那样,这是一个非常常见的问题.似乎没有人真正说出为什么这是一个问题,这就是为什么似乎许多答案似乎没有抓住实际问题.

当使用asp:Table控件或asp:GridView控件时,生成的标记看起来如下:

<asp:Table id="table1" border="0" runat="server"></asp:Table>

Gridview非常相似,但包含一个’rules’属性,可以通过将Gridlines属性设置为“none”来省略该属性.但是,将网格线设置为none时会处理rules属性,border =“0”始终保留.

现在问题是:为了使用W3验证器验证此代码,border属性必须设置为border =“”OR border =“1”.这似乎是一个非常简单的解决方案,进一步调查证明恰恰相反.

我试图将值更改为验证器将接受的值:

即:

table1.Attributes.Add("border","1"); // This generates <asp:Table id="table1" border="0" border="1" runat="server"></asp:Table>

table1.Attributes.Add("border",null); // This generates <asp:Table id="table1" border="0" border="" runat="server"></asp:Table>

table1.Attributes["border"] = "1";  // This generates <asp:Table id="table1" border="0" border="1" runat="server"></asp:Table>

table1.Attributes["border"] = "";  // This generates <asp:Table id="table1" border="0" border="" runat="server"></asp:Table>

table1.Attributes.Remove("border"); // This generates <asp:Table id="table1" border="0"  runat="server"></asp:Table>

这些都没有达到预期的效果. asp:表总是生成border =“0”,我似乎无法修改该值.

有没有人有任何其他想法,再次,升级框架暂时不是一个选项.我们将在不久的将来进行升级 – 但不会在此版本投入生产之前.

非常感谢

解决方法

我已经研究了这个问题很长一段时间没有我在互联网上阅读的内容可以解决这个问题,甚至Framework 4.0推荐的想法也没有用,因为我的应用程序已经针对框架4.0而且仍然无法删除GridView控件中的“Border = 0”.我发现的是,我的Web.Config虽然是针对Framework 4.0,但在Pages标签上也将controlRenderingCompatibilityVersion设置为“3.5”.通过删除此设置,它会自动从GridView控件中删除“Border”属性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读