如何在MVC3中编辑Html.DisplayFor方法的CSS?我使用以下代码在我的视图中显示来自视图模型的文本:@Html.DisplayFor(m=>m.Name)当我查看IE9中的HTML详细信息(我必须在工作中使用)时,没有任何内容名称为Associatedclass,它只使用BodyCSS样式而不是显示字段类样式。有谁知道这可能是什么原因造成的,或者我如何编辑所创建文本的CSS?DisplayFor用于模板原因。如果你不使用模板,那么你应该只使用这样的项目:@Model.Name如果你想给它一个类或id,那么你需要将它包装在一个span或div中。您的问题是您使用了错误的方法来输出数据并期望它做其他事情。没有内置的方法来输出带有类名的原始数据。所以你的选择是,要么将原始项目包装在可以应用css的容器中,要么为这些项目创建一个模板,并在DisplayFor中指定模板名称,如下所示:@Html.DisplayFor(m=>m.Name,"NameTemplate")如果它是一个标签,使用适当的帮助,正如Nataka526所建议的那样,否则将它放在一个类的范围内并更新该类的css:你的HTML:@Html.DisplayFor(m=>m.Name)你的css:.name{//customcss}UPDATE另一种选择:更新显示模板以处理特定的ViewData键:在Views>Shared>DisplayTemplate(如果尚未创建此文件夹,则创建):添加文件String.cshtml:@modelstring@{stringmyClass=ViewData["class"]}@if(string.IsNullOrEmpty(myClass)){@:@Model}else{@Model}除了字符串,您可能还需要为其他添加DisplayTemplates尖端。在视图中,您可以这样写:@Html.DisplayFor(m=>m.Name,new{@class="name"})这将自动在其周围添加一个跨度。更新说明:Html.DisplayFor有一个重载,它有两个参数:expression和objectadditionalViewData。所以我传递的第二个参数是匿名对象additionalViewData。我在html帮助程序中使用一个名为class的属性创建了这个对象,然后检查是否有一个带有键类的ViewData,如果有,我将输出放在一个具有该类值的范围内。**将变量名从class更新为myClass,因为“class”不是合适的变量名。以上是C#学习教程:HowtoedittheCSSoftheHtml.DisplayFormethodinMVC3?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
