gpt4 book ai didi

asp.net-mvc - 在 MVC 中,我可以使用数据注释将默认文本替换为图像吗?

转载 作者:行者123 更新时间:2023-12-05 01:21:21 26 4
gpt4 key购买 nike

我想知道是否有任何内置于 MVC 中的东西(我目前使用的是 4)可以让我将显示从文本字段名称更改为图像。

来自模型:

 [Display(Name = "Red")]
public virtual int? RedManaCost { get; set; }

从 View :

<div class="editor-label">
@Html.LabelFor(model => model.Cards.RedManaCost)
</div>
<div class="editor-field">
@Html.TextBoxFor(model => model.Cards.RedManaCost, new {style = "width:50px"})
@Html.ValidationMessageFor(model => model.Cards.RedManaCost)
</div>

这会在我的文本框上呈现红色这个词。我想要的是红色符号的图像。我知道我可以将其硬编码到我的 View 中......我希望有一种更有效的方法。谢谢!

最佳答案

您可以创建一个助手,您传递 DiplayNameFor(“Red”、“Blue”等)并在助手内部执行一个 Switch 来放置颜色而不是标签。在我的示例中,我使用彩色 DIV 而不是图像...但是您可以使用图标将 DIV 更改为 IMG .

类似于:

@helper CardColor(string myColor){
switch(myColor.ToUpper()){
case "RED":
<div style="background-color: #FF0000; width: 20px; height:20px;"></div>
break;
case "BLUE":
<div style="background-color: #0000FF; width: 20px; height:20px;"></div>
break;
}

你可以这样使用它:

@CardColor(Html.DisplayNameFor(model => model.Cards.RedManaCost).ToHtmlString())

注意:我不确定 DisplayNameFor 是否已经出现在 MVC4 中,但如果没有...您可以创建一个扩展。

关于asp.net-mvc - 在 MVC 中,我可以使用数据注释将默认文本替换为图像吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31564438/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com