asp.net – 在自动生成的GridView列中防止HTML编码
发布时间:2020-05-24 03:59:11 所属栏目:asp.Net 来源:互联网
导读:我有一个GridView绑定到我构造的一个DataTable.表中的大多数列包含一个超链接链接的原始 HTML,我希望该 HTML作为浏览器中的链接呈现,但是GridView会自动对HTML进行编码,因此它将以标记形式呈现. 如何在没有明确添加HyperLink或任何其他列的情况下避免这种情况
|
我有一个GridView绑定到我构造的一个DataTable.表中的大多数列包含一个超链接链接的原始 HTML,我希望该 HTML作为浏览器中的链接呈现,但是GridView会自动对HTML进行编码,因此它将以标记形式呈现. 如何在没有明确添加HyperLink或任何其他列的情况下避免这种情况? 解决方法只需将BoundColumn.HtmlEncode属性设置为false:
< asp:BoundField DataField =“HtmlLink”HtmlEncode =“false”/> 恐怕没有一个简单的方法来禁用HTMLView中的HTML编码,并且具有 选项1:在执行基本方法之前,继承GridView类,覆盖Render方法,循环遍历所有单元,解码其内容: for (int i = 0; i < Rows.Count; i++)
{
for (int j = 0; j < Rows[i].Cells.Count; j++)
{
string encoded = Rows[i].Cells[j].Text;
Rows[i].Cells[j].Text = Context.Server.HtmlDecode(encoded);
}
}
选项2:在从GridView继承的类中或在使用它的“页面”或“控件”中,自行检查DataTable并为每列创建一个显式的BoundColumn: foreach (DataColumn column in dataTable.Columns)
{
GridViewColumn boundColumn = new BoundColumn
{
DataSource = column.ColumnName,HeaderText = column.ColumnName,HtmlEncode = false
};
gridView.Columns.Add(boundColumn);
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – BC30560:’ExtensionAttribute’在名称空间’S
- asp.net-mvc – 部分视图中的Razor部分包含
- 如何强制我的ASP.net 2.0应用程序重新编译
- asp.net-mvc – 如何在MVC Unobtrusive Validation中验证Da
- asp.net-mvc – 在ASP.NET MVC 4中的用户控制等效
- rest – 基于权限从WebApi端点进行上下文序列化
- asp.net-mvc – 在应用程序池回收后,如何预热我的asp.net m
- asp.net-mvc – 将{sitename}参数传递给MVC控制器操作
- asp.net – 如何使用命令行msbuild部署VS2012网站项目,而无
- asp.net-mvc – ASP.NET MVC:如何从Html.ActionLink链接中
推荐文章
站长推荐
- asp.net-mvc – 我可以从动作过滤器返回动作结果
- asp.net – 如何在回发后阻止关闭模态弹出窗口(M
- asp.net-web-api – Asp.net WebApi将UTC时间字符
- asp.net-web-api – Web API 2是否可以通过编程方
- ASP.NET MVC Model绑定的简单应用
- asp.net – System.Web.Optimization是.NET Fram
- asp-classic – Request.BinaryRead(Request.Tot
- ASP.NET MVC 3 ValidateRequest(false)不能使用F
- asp.net – 如何设置MVC应用程序的默认页面?
- asp.net-mvc – 如何从mvc中的控制器中设置隐藏字
热点阅读
