Вот как я это сделал. Из-за ограниченной природы WebGrid по умолчанию у вас есть несколько вариантов ... Мне нужно было это для работы с IE6, и я НЕ смог найти подходящий плагин jQuery, который работал бы во всех браузерах, поэтому я выбрал вариант 1. Предупреждение : Это немного грязно
1 - сверните свой собственный HtmlHelper
2 - использовать стороннюю альтернативу WebGrid
3 - Используйте плагин jQuery
HtmlHelpers.cs
/// <summary>
/// This class contains various methods for supplementing the usage of html within the Razor view pages
/// </summary>
public static class HtmlHelpers
{
/// <summary>
/// This method truncates a string to a given length for display within a WebGrid or elsewhere as a tooltip
/// </summary>
/// <param name="helper">Generic parameter needed to recognize HtmlHelper syntax</param>
/// <param name="input">This is the string to truncate</param>
/// <param name="length">The length of the string to truncate to</param>
/// <returns>Html representing a tooltip, if needed</returns>
public static IHtmlString ToolTip(this HtmlHelper helper, String input, int length)
{
if (input.Length <= length)
return new MvcHtmlString(input);
else
return new MvcHtmlString(String.Format("<span title=\"{2}\">{0}{1}</span>", input.Substring(0, length), "...", input));
}
}
YourView.cshtml
grid.Column(columnName: "Detail", header: "Description", format: @<text>@Html.Truncate((string)item.Detail,50)</text>),