ho una gridview associata ad un objectDataSource, vorrei semplicemente che il colore di sfondo della riga che presenta il campo Letto=false fosse di un colore tipo azzurro o rosso! come devo fare?
ho una gridview associata ad un objectDataSource, vorrei semplicemente che il colore di sfondo della riga che presenta il campo Letto=false fosse di un colore tipo azzurro o rosso! come devo fare?
la vita è un fulmine ma prenderlo nel culo è un lampo.
ciao!
piu o meno devi fare una cosa di questo tipo:
protected void myGrid_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
OggettoBindatoType rowSource = (OggettoBindatoType )e.Row.DataItem;
if (rowSource.Letto == false)
{
e.Row.Style["background-color"] = "red";
}
}
}
OggettoBindatoType rappresenta il tipo degli elementi della collection che tira fuori l'oggetto ObjectDataSource...![]()
se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)
if (e.Row.RowType == DataControlRowType.DataRow)
{
utenti.ordiniRow rowSource = (utenti.ordiniRow)e.Row.DataItem;
if (rowSource.letto == false)
{
e.Row.Style["background-color"] = "red";
}
}
ho modificato il tuo codice mettendo l'oggetto del ObjectDataSource però mi da errore sul cast
Impossibile eseguire il cast di oggetti di tipo 'System.Data.DataRowView' sul tipo 'ordiniRow'.
dove sbaglio?
la vita è un fulmine ma prenderlo nel culo è un lampo.
Allora prova a convertire a ordiniRow![]()
tanto l'importante e' che poi recuperi la proprieta!
DataRowView te lo mette quando gli associ tipo un datareader, o una datatable!
se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)
mi faresti un esempio? perchè io ho usato il tuo codice cosi come lo hai postato
la vita è un fulmine ma prenderlo nel culo è un lampo.
per farti un esempio piu concreto, mi devi dare un prototipo dell' objectDataSource!![]()
se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)
questo è il codice del dataobject, che mi restituisce visual studiocodice:<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="GetDataBy" TypeName="utentiTableAdapters.ordiniTableAdapter" DeleteMethod="Delete" InsertMethod="Insert" UpdateMethod="Update"> <SelectParameters> <asp:QueryStringParameter Name="idCliente" QueryStringField="idUtente" Type="Int32" /> </SelectParameters> <DeleteParameters> <asp:Parameter Name="Original_id" Type="Int32" /> </DeleteParameters> <UpdateParameters> <asp:Parameter Name="idCliente" Type="Int32" /> <asp:Parameter Name="cartellaLavoro" Type="String" /> <asp:Parameter Name="statoLavori" Type="String" /> <asp:Parameter Name="dataInserimento" Type="DateTime" /> <asp:Parameter Name="letto" Type="Boolean" /> <asp:Parameter Name="nomeCognome" Type="String" /> <asp:Parameter Name="messaggio" Type="String" /> <asp:Parameter Name="azienda" Type="String" /> <asp:Parameter Name="citta" Type="String" /> <asp:Parameter Name="indirizzo" Type="String" /> <asp:Parameter Name="cap" Type="String" /> <asp:Parameter Name="prov" Type="String" /> <asp:Parameter Name="nazione" Type="String" /> <asp:Parameter Name="email" Type="String" /> <asp:Parameter Name="tipoProdotto" Type="String" /> <asp:Parameter Name="numeroCopie" Type="Int32" /> <asp:Parameter Name="progettoGrafico" Type="String" /> <asp:Parameter Name="richieste" Type="String" /> <asp:Parameter Name="ptInfo" Type="String" /> <asp:Parameter Name="dataPtInfo" Type="DateTime" /> <asp:Parameter Name="chiuso" Type="Boolean" /> <asp:Parameter Name="Original_id" Type="Int32" /> </UpdateParameters> <InsertParameters> <asp:Parameter Name="idCliente" Type="Int32" /> <asp:Parameter Name="cartellaLavoro" Type="String" /> <asp:Parameter Name="statoLavori" Type="String" /> <asp:Parameter Name="dataInserimento" Type="DateTime" /> <asp:Parameter Name="letto" Type="Boolean" /> <asp:Parameter Name="nomeCognome" Type="String" /> <asp:Parameter Name="messaggio" Type="String" /> <asp:Parameter Name="azienda" Type="String" /> <asp:Parameter Name="citta" Type="String" /> <asp:Parameter Name="indirizzo" Type="String" /> <asp:Parameter Name="cap" Type="String" /> <asp:Parameter Name="prov" Type="String" /> <asp:Parameter Name="nazione" Type="String" /> <asp:Parameter Name="email" Type="String" /> <asp:Parameter Name="tipoProdotto" Type="String" /> <asp:Parameter Name="numeroCopie" Type="Int32" /> <asp:Parameter Name="progettoGrafico" Type="String" /> <asp:Parameter Name="richieste" Type="String" /> <asp:Parameter Name="ptInfo" Type="String" /> <asp:Parameter Name="dataPtInfo" Type="DateTime" /> <asp:Parameter Name="chiuso" Type="Boolean" /> </InsertParameters> </asp:ObjectDataSource>
la vita è un fulmine ma prenderlo nel culo è un lampo.
altrimenti fammi un piccolissimo esempio che poi lo adatto al mio caso
la vita è un fulmine ma prenderlo nel culo è un lampo.
CIAO!
prova a fare cosi:
System.Data.DataRowView currentRow = (System.Data.DataRowView)e.Row.DataItem;
bool blnLetto = Convert.ToBoolean(currentRow["letto"]);
se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)
ok ho risolto cosi
grazie 1000 x l'aiuto
DataRowView rowSource = (DataRowView)e.Row.DataItem;
if (bool.Parse(rowSource["letto"].ToString()) == false)
la vita è un fulmine ma prenderlo nel culo è un lampo.