限制mvc 2中列表框的项目长度

发布于 2024-10-19 02:45:12 字数 314 浏览 2 评论 0原文

在我的 MVC 2 应用程序中,我有一个列表框,

<%: Html.ListBoxFor(m => m.SelectedQuestionIds[cnt1], Model.QuestionList, new { @class = "list_style" })%>

我使用“list_style”样式限制了列表框的宽度。

我的问题是列表框中的某些项目的长度大于列表框的宽度。 如果长度太长,我需要限制用“...”显示的项目的长度。 所以我的文字将是“你好吗……” “你好吗,我亲爱的朋友,你还好吗!” 谢谢, 问候

In my MVC 2 application i ahve a list box

<%: Html.ListBoxFor(m => m.SelectedQuestionIds[cnt1], Model.QuestionList, new { @class = "list_style" })%>

i have limited my list box width with the style "list_style".

my problem is that some of the item in my listbox has length greater than my listbox width.
i need to limit the length of the item shown with a '...' if the length is too long.
so my text will be 'how are you ...'
for 'How are you my dear friend are u okay!'
thanks,
regards

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

面如桃花 2024-10-26 02:45:12

您应该将其放在扩展方法中,例如

public static class StringExtensions {

  public static string TrimLength(this String text, int length) {
    if (text != null && text.Length > length) {
      return text.Substring(0, length - 1);
    }
    return text;
  }

  public static string TrimLengthWithEllipsis(this String text, int length) {
    if (text != null) {
      return TrimLength(text, length) + "..."; 
    }
    return text;
  }

}

然后您可以使用

model.QuestionList = from question in model.Questions
                                     select new SelectListItem
                                     {
                                         Text=question.QuestionDescription.TrimLengthWithEllipses(48),
                                         Value=question.QuestionID.ToString()
                                     };

更干净且更可重用的方法。

You should put this in an extension method, something like

public static class StringExtensions {

  public static string TrimLength(this String text, int length) {
    if (text != null && text.Length > length) {
      return text.Substring(0, length - 1);
    }
    return text;
  }

  public static string TrimLengthWithEllipsis(this String text, int length) {
    if (text != null) {
      return TrimLength(text, length) + "..."; 
    }
    return text;
  }

}

Then you can use

model.QuestionList = from question in model.Questions
                                     select new SelectListItem
                                     {
                                         Text=question.QuestionDescription.TrimLengthWithEllipses(48),
                                         Value=question.QuestionID.ToString()
                                     };

Much cleaner and more reusable.

你不是我要的菜∠ 2024-10-26 02:45:12

idid这个:

model.QuestionList = from question in model.Questions
                                         select new SelectListItem
                                         {
                                             Text=question.QuestionDescription.Length>48?question.QuestionDescription.Substring(0,47)+" ...":question.QuestionDescription,
                                             Value=question.QuestionID.ToString()
                                         };

idid this:

model.QuestionList = from question in model.Questions
                                         select new SelectListItem
                                         {
                                             Text=question.QuestionDescription.Length>48?question.QuestionDescription.Substring(0,47)+" ...":question.QuestionDescription,
                                             Value=question.QuestionID.ToString()
                                         };
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文