2011-03-23 3 views
3

Я только что прочитал: http://www.mikesdotnetting.com/Article/154/Looking-At-The-WebMatrix-WebGrid и увидеть ссылку на [Optional, Default Value(null)] string headerФормат заголовка для WebGrid

текста заголовка, если вы не хотите, имена полей базы данных

Но я не уверен, как форматировать значения ячеек. Например, если у меня есть WebGrid, который выглядит следующим образом:

Column Name   Column Name   Column Name   Column Name   
Cell value   Cell value   Cell value   Cell value   
Cell value   Cell value   Cell value   Cell value   
Cell value   Cell value   Cell value   Cell value   
Cell value   Cell value   Cell value   Cell value   
Cell value   Cell value   Cell value   Cell value   

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

Можно ли это сделать с помощью WebGrid? Я сделал это на PHP, но понятия не имею, где искать, или как это сделать с помощью WebGrid.

При поиске в Google, Bing и Yahoo! (?) Я вижу только результаты для этих премиальных компонентов WebGrid, а не только для реального WebGrid, а также для любых результатов, которые могли бы помочь.

+1

Вы посмотрели на это? http://weblogs.asp.net/andrebaltieri/archive/2010/11/02/asp-net-mvc-3-working-with-webgrid-part-2.aspx –

+0

Спасибо за ссылку, я уверен, что это скоро пригодится, но когда я попытался использовать код там, я продолжал перегружать ошибки. –

ответ

2

В статье DotNetting Майка, который вы ссылаетесь, он показывает, как отобразить shortdate в следующей строке кода:

format: @<text>@item.DatePublished.ToShortDateString()</text> 

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

format : @<text>@Html.Raw(NDisplay.displayComment(username, item.AssignedTo, item.NALComment, item.refID, item.Process))</text>, 

, а затем в этой функции:

public static string displayComment(string username, string AssignedTo, string NALComment, int refID, string Process) 
{ 
    // various junk code removed, testing user and rights 
    // here we know we have the right user, he or she needs the edit URL 
    // two parameters are passed, first the refID, second the Process (or document) 
    string e = "<a href =\"../Process/" + refID.ToString() + "/" + Process +"/\">Edit</a> " + NALComment; 

    return e; 
} 

В каждой клетке, есть редактировать гиперссылку, а затем текст комментария.

+2

Если вы пишете собственную пользовательскую функцию, предназначенную для генерации HTML, вы должны использовать помощника: http://www.mikesdotnetting.com/Article/173/[email protected]@Functions- In-WebMatrix –

+1

@Mike Brind, очень интересно. Я не считал это, поскольку функция находится внутри определения столбца. – Knox

+0

@Mike - Спасибо, я дам это сейчас! –

Смежные вопросы