Ciao a tutti, ho un problema di gestione di una icona all'interno di una gridview in una pagina asp.net e codebehind VB. La mia esigenza e quanto fatto fino ad ora è mostrare una icona differente per ogni riga a seconda del valore di un parametro dentro una delle colonne della gridview. Per farlo io ho l'ho pensata così:
ASP.NET:
Codebehind VB:codice:<asp:GridView ID="gv1" runat="server" CellPadding="2" CellSpacing="2" GridLines="None" AllowPaging="True" AutoGenerateColumns="False" DataKeyNames="ID" DataSourceID="SqlDataSource1"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Image ID="imgID" runat="server" /> </ItemTemplate> </asp:TemplateField> <asp:BoundField DataField="proprietario" HeaderText="Owner" SortExpression="proprietario"> <ItemStyle HorizontalAlign="Right" /> </asp:BoundField> </Columns> </asp:GridView>
Il problema è che in effetti la gridview ha tutte le sue iconcine corrette per ciascuna row a seconda che sulla row compaia un proprietario o un fruitore, tranne che nella prima row della gridview, dove l'icona è sempre broken (cliccando sulle proprietà dell'immagine nella pagina del browser infatti è l'unica che non ha alcuna parametrizzazione per essere attiva).codice:Protected Sub gv1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gv1.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then Dim nImgID As Image = CType(e.Row.FindControl("imgID"), Image) For Each myRow As GridViewRow In gvPMProject.Rows If myRow.Cells(3).Text = lblNomeProp.Text Then nImgID.ImageUrl = "~/Images/cl_24.png" nImgID.ToolTip = "Proprietario" Else nImgID.ImageUrl = "~/Images/pm_20_b.png" nImgID.ToolTip = "Furitore" End If Next End If End Sub
Mi chiedevo come mai evita sempre di caricare la prima icona quando cicla?
Spero d'essermi spiegato bene, sono a disposizione per chiarire meglio qualsiasi concetto se può essere d'aiuto.
Grazie anticipatamente.

Rispondi quotando