Formato de cabeçalho para WebGrid
Pergunta
Acabei de ler: http://www.mikesdotnetting.com / Article / 154 / Looking-At-The-WebMatrix-WebGrid e veja uma referência a [Optional, Default Value(null)] string header
Texto do cabeçalho se você não quiser nomes de campos de banco de dados
Mas não tenho certeza de como formatar os valores das células.Por exemplo, se eu tiver um WebGrid parecido com este:
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
Gostaria de tornar cada célula clicável e, dependendo da coluna em que ela se encontra, gostaria que o hiperlink correspondente fosse diferente do hiperlink de outra célula.
Isso pode ser feito usando o WebGrid?Fiz isso em PHP, mas não tenho ideia de onde procurar ou como fazer com WebGrid.
Ao pesquisar no Google, Bing e Yahoo! (?), só vejo resultados para os componentes premium do WebGrid, nem um único resultado para o WebGrid real, nem quaisquer resultados que possam ajudar.
Solução
No artigo DotNetting de Mike que você faz referência, ele mostra como exibir a data abreviada na seguinte linha de código:
format: @<text>@item.DatePublished.ToShortDateString()</text>
Como o formato substitui a célula inteira, você só precisa colocar o código que produz o HTML desejado, incluindo os hiperlinks.Uma vez que produzir qualquer coisa complicada pode tornar essa linha de código muito difícil de ler, pode ser melhor escrever sua própria classe / função que produza o código que você deseja.Eu tenho uma situação como essa e minha linha de formato se parece com:
format : @<text>@Html.Raw(NDisplay.displayComment( username, item.AssignedTo, item.NALComment, item.refID, item.Process))</text>,
E nessa função:
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;
}
Em cada célula, há um hiperlink de edição, seguido por um comentário de texto.