Sto creando una web part di SharePoint in C# e parte di esso restituisce un controllo GridView alla pagina. Mentre riesco ad ottenere un controllo abbastanza ampio sul modo in cui viene visualizzato impostando la classe CSS del GridView stesso, quello che vorrei davvero fare è essere in grado di specificare le classi su determinati elementi specifici di td. Non sono sicuro di come procedere, o se sarebbe fatto al momento in cui GridView viene popolato con le righe o al momento in cui GridView viene aggiunto alla pagina.Come si specificano le classi CSS per righe specifiche in GridView?
In pseudocodice, ciò che avevo essenzialmente immaginato era di poter dire qualcosa come gridView.Row[4].CssClass = "header"
, che avrebbe impostato il td della quinta riga in GridView alla classe "intestazione".
Ho guardato in utilizzando l'evento RowDataBound, quindi ho solo usato il seguente per testarlo:
protected void outputGrid1_RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.CssClass = "outputHeader";
}
E 'probabilmente il mio fraintendimento di come utilizzare correttamente che, ma non sembra fare nulla. Pensavo che avrebbe impostato tutte le righe sulla "intestazione" della classe e, in caso affermativo, avrei lavorato sulla mia logica da lì, ma non riesco nemmeno a farlo funzionare. Grazie per l'aiuto che chiunque può fornire!
Mi piace questo approccio. Tuttavia, passando il codice nel debugger, trovo che il mio RowDataBound non viene chiamato. L'ho scritto esattamente come è nella domanda e la mia griglia si chiama outputGrid1. Hai idea del motivo per cui non chiamerebbe RowDataBound? –
L'unica cosa aggiuntiva che dovevo fare era impostare la proprietà RowDataBound della mia GridView sul metodo RowDataBound, in questo modo: outputGrid1.RowDataBound + = outputGrid1_RowDataBound; Grazie per l'aiuto! –
@Geo Eye: vedere gli aggiornamenti sopra. Magari inserisci il tuo codice se continui a riscontrare problemi – Nij