2012-03-09 2 views
2

I Have определить один Control WebGrid, и я хочу, чтобы установить ширину столбца, следовательно, я установить ширину столбца следующим способомНабор webgerid ширина колонки в MVC3

Grid.Column («Подробности», canSort: ложь, формат : (пункт) => Html.ActionLink ("подробности", "подробности", новый {ID = item.CompetitiveExam.CompetitiveExamId}) стиль: "детали")

и мой класс CSS как ...

.details {ширина: 100px; }

этот выше код правильно работает, но я не хочу использовать отдельный класс css.

и им также попробовать в следующий код, используя CSS, но поместить его это не работают .....

Grid.Column ("Подробности", canSort: ложь, формат: (пункт) => Html .ActionLink ("подробности", "подробности", новый {идентификатор = item.CompetitiveExam.CompetitiveExamId}) стиль: "ширина: 100px")

пожалуйста, любой может мне помочь .... ..........

ответ

1

Параметр «стиль» был неудачным выбором. Он используется только для имени класса, а не для встроенных деклараций стиля.

Вариант 1.

Если вы действительно хотите изменить свою ширину колонки без CSS, есть другие переопределения для Html.ActionLink, который принимает htmlAttributes в качестве четвертого параметра. Он будет отображать эти атрибуты в каждой строке, поэтому он не самый эффективный, но он работает.

new { style = "display:inline-block; width:100px;" } 

Вот сплошная линия

Grid.Column("Details", 
      canSort: false, 
      format: (item) => Html.ActionLink("Details", 
         "Details", 
         new { id = item.CompetitiveExam.CompetitiveExamId }, 
         new { style = "display:inline-block; width:100px;" } 
        ) 
      ) 


Вариант 2.

Для более общего случая, когда вы хотите какой-либо тип столбца содержат форматирование, просто включить оболочку HTML с желаемое форматирование. Опять же, это делает ваш документ больше, чем он должен быть:

format: ((item) => new MvcHtmlString("<div style='width:100px;'>" + 
        "your content here" + 
        "</div>")) 
Смежные вопросы