在asp.net mvc中为复选框助手设置标签值

时间:2015-06-09 08:16:56

标签: c# asp.net-mvc razor

我正在开发一个asp.net mvc应用程序。

我有一个viewmodel:

public class UserViewModel
{
    public bool IsActive {get;set;}
}

我有相关的剃刀观点:

<span>@Html.CheckBoxFor(d => d.IsActive)</span>

问题在于,我的视图中只有checkbox而没有任何label,我想知道是否可以指示label CheckBoxFor参数或在ViewModel中添加属性的属性。

2 个答案:

答案 0 :(得分:0)

您可以使用数据注释。将其添加到ViewModel类定义的顶部

using System.ComponentModel.DataAnnotations;

[Display(Name = "Active")]属性

上方添加IsActive
public class UserViewModel
{
    [Display(Name = "Active")]
    public bool IsActive {get;set;}
}        

并在您的视图中添加@Html.LabelFor(d => d.IsActive)

@Html.LabelFor(d => d.IsActive)<span>@Html.CheckBoxFor(d => d.IsActive)</span>

将在复选框之前呈现<label for="IsActive">Active</label>

答案 1 :(得分:0)

尝试如下:

在ViewModel中添加以下命名空间

using System.ComponentModel.DataAnnotations;

然后在类属性上方使用[Display(Name="Sample Label Text")]

public class UserViewModel
{
    [Display(Name = "Sample Label Text")]
    public bool IsActive {get;set;}
}

最后使用@Html.LabelFor来呈现它

<span>@Html.LabelFor(d => d.IsActive)</span>
<span>@Html.CheckBoxFor(d => d.IsActive)</span>