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:
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>
Codebehind VB:
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
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).
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.