use*_*181 24 asp.net-mvc asp.net-mvc-2 asp.net-mvc-uihint
什么是在MVC中使用UIHint属性.任何人都可以请我提供一个如何使用它及其功能的简单示例.
Dis*_*ile 37
使用显示或编辑器模板时,UIHint将告诉它使用哪个模板:
[UIHint("SomeTemplate")]
public class MyViewModel
{
public string SomeProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
如果在Views/Shared/DisplayTemplates或Views/{Controller}/DisplayTemplates中创建名为SomeTemplate.ascx的显示模板(因为您是MVC2),那么当您执行以下操作时,它将使用该模板:
@Html.DisplayForModel() // if Model is MyViewModel
Run Code Online (Sandbox Code Playgroud)
要么
@Html.DisplayFor(m => m.ModelProperty) // if ModelProperty is of type MyViewModel
Run Code Online (Sandbox Code Playgroud)
编辑
如果要在属性级别指定此项:
public class MyViewModel
{
[UIHint("Birthday")]
public DateTime DateOfBirth { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
您可以在/ Views/Shared或/ Views/{Controller}中的DisplayTemplates或EditorTemplates文件夹中创建名为Birthday的显示/编辑器模板.然后你做的时候:
@Html.DisplayFor(m => m.DateOfBirth)
Run Code Online (Sandbox Code Playgroud)
要么
@Html.EditorFor(m => m.DateOfBirth)
Run Code Online (Sandbox Code Playgroud)
它将使用UIHint中指定的模板
小智 16
UIHint只能用于不在类声明上的属性作为Dismissile状态.我正在使用MVC3,所以这可能已经从MVC2改变了.
"属性'UIHint'在此声明类型上无效.它仅对'property,indexer,field'声明有效"
| 归档时间: |
|
| 查看次数: |
23635 次 |
| 最近记录: |