是否有更簡單的方法在空webgrid中顯示「找不到記錄」?以下是我擁有的適用於我的代碼。但是,我不想在其他選項卡的else塊中創建HTML表格。在webgrid中顯示「找不到記錄」c#網頁
@if (Page.Tab == "DisplayGrid")
{
if (Page.IncompleteCount > 0)
{
var grid = new WebGrid(Page.DisplayData, rowsPerPage: 10, defaultSort: "UserName", canSort: true);
@grid.Pager(mode: WebGridPagerModes.All, previousText: "previous", nextText: "next", numericLinksCount: 20)
@grid.GetHtml(columns: grid.Columns(
grid.Column("UserName", "User"),
grid.Column("Column1", "Column 1", format: @<div><a href="@Href("~/thispage/", item.UserId)" target="_blank">@item.UserId</a></div>),
grid.Column("Column2", "Column 2", format: @<div class="w400">@HH.TruncateString(@item.Column2, 125)</div>),
grid.Column("Column3", "Column 3", format: @<div class="w200"> @HH.FmtDate(@item.Column3)</div>)),
tableStyle: "simple", headerStyle: "hdr", rowStyle: "odd", alternatingRowStyle: "even", mode: WebGridPagerModes.All, previousText: "previous", nextText: "next", numericLinksCount: 20)
}
else
{
<table>
<tr bgcolor ="#336699">
<td width="150">
<font color="white"><b><u>User</u></b></font>
</td>
<td width="100">
<font color="white"><b>Column 1</b></font>
</td>
<td width="300">
<font color="white"><b>Column 2</b></font>
</td>
<td width="100">
<font color="white"><b>Column 3</b></font>
</td>
</tr>
<tr>
<td colspan="4" align="center">
<br />
<b>No User Records Found</b>
<br />
</td>
</tr>
</table>
}
}
其他選項卡的Webgrid具有不同的列和列數。確保我擁有正確的colspan#以確保「沒有找到記錄」的信息正確顯示(居中對齊)非常繁瑣。更簡單的方法來做到這一點?謝謝。
如果你可以添加一個頁腳,它會做你想要的。在'@ grid.Table()'它有一個參數,但不是'@ grid.GetHtml()'。然後你可以使用'(Page.IncompleteCount> 0?Page.IncompleteCount:「No」)的值+「User Record」+(Page.IncompleteCount == 1?:「s」:「」)+「Found」總是列出在底部找到的記錄數(它看起來像另一行)。 – Pluto
@ grid.Table()方法就是我正在尋找的。現在,我不得不建立分頁,因爲它沒有GetHtml()方法提供的功能(分頁功能)。感謝您指引我朝着正確的方向發展,冥王星。 – johnsonjames
太棒了,我以前從未使用過WebGrid,因此您應該回答自己的問題並將其標記爲解決方案。 – Pluto