Html.Display不适用于ViewBag

arn*_*rob 3 html.textbox razor asp.net-mvc-3

Html.Display不适用于ViewBag.

@Html.Display("disp", (string)@ViewBag.disp)
Run Code Online (Sandbox Code Playgroud)

我必须使用这个viewbag,因为它可以通过选择另一个disp的搜索按钮进行修改.

@Html.TextBox("disp", (string)@ViewBag.disp)
Run Code Online (Sandbox Code Playgroud)

如果我使用TextBox而不是Display它可以工作,但我想要是只读的.怎么可能?

Rap*_*aus 9

因为Display没有重载,它将值作为参数.

所以.

你可以干脆做

@ViewBag.disp
Run Code Online (Sandbox Code Playgroud)

或(如果它包含HTMl)

@Html.Raw(ViewBag.disp)
Run Code Online (Sandbox Code Playgroud)

或者如果你想要一个TextBox

@Html.TextBox("disp", (string)@ViewBag.disp, new{@readonly = true})
Run Code Online (Sandbox Code Playgroud)