Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
438 views
in Technique[技术] by (71.8m points)

c# - How to retain spaces in DropDownList - ASP.net MVC Razor views

I'm binding my model in the following way in the view:

<%=Html.DropDownList("SelectedItem",new SelectList(Model.MyItems,"ItemId","ItemName")) %>

Issue is my item text is a formatted text with spaces in between words, as below.

#123  First          $234.00
#123  AnotherItem    $234.00
#123  Second         $234.00

I want to retain the spaces in this item text even after they are added to DropDownList. But unfortunately my DropDownList shows them without spaces as below:

#123 First $234.00
#123 AnotherItem $234.00
#123 Second $234.00

When I view the source of the page those spaces are intact but in display it is not. I've tried to add '&nbsp;' instead of spaces but SelectList (MVC framework class) internal method is using HtmlEncode before adding them as items in the dropdownlist.

Is there any way I can achieve this?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

nbsp in html corresponds to "xA0" as a C# string, so use this instead of spaces, when HTML encoded it will produce nbsp


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...