- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
优雅Action Syntax在 MVCContrib 网格中为我们提供了 Empty()
方法。但是,MvcContrib.UI.Grid.GridRenderer<T>.RenderHeader()
的默认行为是在网格为空时隐藏表格列标题。有没有一种方法可以在不需要重大重构的数据不存在时显示标题?
现在我听说过默认隐藏 header 和硬编码一些东西,但这对我来说并不酷。
顺便说一句,这就是幕后发生的事情(在 MvcContrib.UI.Grid.GridRenderer<T>
中):
protected virtual bool RenderHeader()
{
//No items - do not render a header.
if(! ShouldRenderHeader()) return false;
RenderHeadStart();
foreach(var column in VisibleColumns())
{
//Allow for custom header overrides.
if(column.CustomHeaderRenderer != null)
{
column.CustomHeaderRenderer(new RenderingContext(Writer, Context, _engines));
}
else
{
RenderHeaderCellStart(column);
RenderHeaderText(column);
RenderHeaderCellEnd();
}
}
RenderHeadEnd();
return true;
}
protected virtual bool ShouldRenderHeader()
{
return !IsDataSourceEmpty();
}
protected bool IsDataSourceEmpty()
{
return DataSource == null || !DataSource.Any();
}
最佳答案
您可以覆盖 HtmlTableGridRenderer
类的 ShouldRenderHeader()
方法。
public class AlwaysRenderHeaderRenderer<T>
: HtmlTableGridRenderer<T> where T : class
{
protected override bool ShouldRenderHeader()
{
return true;
}
}
<%= Html.Grid(Model).RenderUsing(new AlwaysRenderHeaderRenderer<TypeOfModel>()) %>
这种方法的一个副作用是当网格为空时,将呈现一个空的表体而不是消息。提供给 Empty()
的任何文本都将被忽略。这对我来说不是问题,因为无论如何我都是在客户端使用 JavaScript 操作表格,但请注意。
关于asp.net-mvc - MVCContrib 网格在空时显示标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3393001/
我已经使用 nuget 和通常的安装包 mvccontrib 安装了 mvccontrib,但我注意到那里没有 testhelper。我是否必须使用其他方式或标志来安装它。 尝试安装包 mvccont
这开始是一个问题,但在我做了一些实验后变成了一个解决方案!所以我想我会和大家分享这个。我的问题是: 如何在不使用 MvcContrib.Grid View 的情况下使用 MvcContrib.Pagi
可能有人可以解释这种行为: 我正在使用最新版本的 MvcContrib 中的 CheckBoxList当我的页面第一次加载时 - 我只是返回我的 View return View(Product.Ge
我需要根据模型中的 bool 值有条件地格式化单元格值。 我有列col.For(item => item.Detail); 如果项目未完成,我需要应用一些CSS样式 我怎样才能做到这一点? 最佳答案
我正在尝试与 MvcContrib 合作网格控制。但是我似乎无法让排序对包含其他对象的复杂对象起作用。 我已经设置了类似于这个问题中的 OP 的 Controller /类/ View 。 Sorti
我正在使用带有区域的 MVC 2。为了测试路由,我使用 MvcContrib。 这是测试代码: [Test] public void Home() { MvcApplication.Regis
在 Html.Grid 中,我们如何确保列中的数据(例如货币金额)正确对齐? 谢谢。 最佳答案 你的意思是在 MvcContrib 网格中? 你可以使用类似的东西: column.For(x => x
MvcContrib 和 MvcFutures 之间是什么关系? 看起来 MvcFutures 包含将成为 future ASP.NET MVC 版本的一部分的代码,而 MvcContrib 是包含来
我正在尝试提出在 ASP.NET MVC 项目中创建分层网格的最佳解决方案。首先,我查看了 jqGrid,发现它的“treeGrid”选项正是我正在寻找的。然而,据我所知,jqGrid 不是免费的,而
我想知道在 MVCContrib 生成的网格中删除行的最佳策略是什么。 考虑这个网格: Html.Grid(Model.Proc.Documents).Columns(column => {
{ column.For(x => x.MinValue).Named("Possible Min Value");
我必须使用存储过程来获取和分页数据。这个特定的存储过程有各种参数,包括分页信息。显然,分页需要在服务器端完成,每次用户选择新页面时都需要获取一页数据。 我正在尝试使用 MVCContrib 来完成这项
我找不到在 MvcContrib 网格中添加自定义列的方法。使用旧版本你可以这样做: column.For("Edit").Do(p => { %> ">Ed
如何向 MVCcontrib 网格的每一行添加一个复选框。然后在发布表格时找出选择了哪些记录?我在搜索时找不到太多。谢谢 最佳答案 以下是您可以如何继续: 型号: public class Produ
尝试创建一个选择列表,其中第一个选项文本设置为空字符串。作为数据源,我有一个带有属性“Key”和“Value”的 GenericKeyValue 类的列表。我目前的代码如下。
我收到错误“字典中不存在给定的键。”使用 swf 作为 MVCContrib 可移植区域中的嵌入式资源。当我从程序集中完全删除文件时,我得到一个标准的 404,所以我很确定它正在找到文件,只是在返回它
我在使用 MvcContrib 的 ShouldMapTo 函数进行路由测试时遇到预期错误。根据结果,一切都很好,但助手抛出了一个 AssertionException ,不幸的是消息稀疏。我正在
优雅Action Syntax在 MVCContrib 网格中为我们提供了 Empty()方法。但是,MvcContrib.UI.Grid.GridRenderer.RenderHeader() 的默
我正在使用 MVC2 和 MvcContrib HelpTester。 我在测试区域中的 Controller 时遇到问题。 这是我的测试类: [TestFixture] public cla
我有一个与 完美配合的网格 @Html.Grid(Model.SearchResults).Columns(column => { //grid code here }).Attributes(@cl
我是一名优秀的程序员,十分优秀!