簡體   English   中英

在ASP.Net MVC的視圖中顯示是/否而不是復選框

[英]Showing Yes/No instead of checkbox in the View of ASP.Net MVC

我是ASP.Net / MVC的新手。 我創建了一個我從模型中填充的視圖。 我正在為模型中的每個項創建一個行,以顯示模型項的屬性/屬性。

其中一個成員是bool,名字是Staged。 在視圖中我想將其顯示為是(如果為true)或否則顯示為否。 用戶只能閱讀它,所以簡單的文字是/否就足夠了。

我在cshtml中使用以下代碼

    <td>
        @Html.DisplayFor(modelItem => item.Staged)         
   </td>

但是,這會在該位置顯示一個復選框,如何將其顯示為是/否?

謝謝,

你可以使用這樣的自定義html助手擴展方法:

@Html.YesNo(item.Staged)

這是以下代碼:

public static MvcHtmlString YesNo(this HtmlHelper htmlHelper, bool yesNo)
{
    var text = yesNo ? "Yes" : "No";
    return new MvcHtmlString(text);
}

通過這種方式,您可以使用一行Razor代碼在整個站點中重復使用它。

使用Html.Raw並根據模型值true / false有條件地呈現字符串

 <td>
      @Html.Raw((Model.Staged)?"Yes":"No")     
 </td>

在模型中,您需要創建一個類似於此的新屬性...

public string ItemStagedYesNo = (item.Staged) ? "Yes" : "No";

然后在視圖中,做

@Html.DisplayFor(modelItem => ItemStagedYesNo);

更改

    @Html.DisplayFor(modelItem => item.Staged)         

    @(item.Staged?"Yes":"No")         

這是實現您的要求的最簡單方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM