Gridview rowdatabound Zugriff auf Datenelemente vb
Ich versuche, ein ImageUrl um ein Bild in eine Template-Feld in GridView, aber erhalte die Fehlermeldung:
Objektverweis nicht auf eine Instanz eines Objekts. auf dieser Linie:
Dim BildPfad As String = rowView("abbildpfad")
Habe ich das noch nie gemacht auf einer GridView hatte aber es funktioniert auf eine ListView.
Vielen Dank für jede Hilfe hier mein code:
.APSX
<asp:GridView ID="gvImages" DataKeyNames="id" runat="server" AutoGenerateColumns="False" BorderWidth="0px" GridLines="None">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="imageId" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Image ID="imageFile" runat="server"></asp:Image>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="id" />
</Columns>
</asp:GridView>
CODE HINTER
Protected Sub gvImages_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvImages.RowDataBound
Dim rowView As DataRowView = CType(e.Row.DataItem, DataRowView)
Dim imagePath As String = rowView("image_path")
Dim strImageUrl As String = "~/admin/images/cases/" & Request.QueryString("uid") & "/" & imagePath
Dim imageFile As System.Web.UI.WebControls.Image = CType(e.Row.FindControl("imageFile"), System.Web.UI.WebControls.Image)
imageFile.ImageUrl = strImageUrl
End Sub
- sind Sie sicher, dass rowView("abbildpfad") ist nicht Rückkehr DBNULL.
- Es hat den Namen, ein Bild so zu überprüfen, die ich gerade entfernt die Bild-Vorlage Feld und fügte hinzu, abbildpfad, um eine Datenbindung Bereich, und es zeigt ein Bild den Namen. also, dass kann nicht wahr sein.
- siehe aktualisierte Antwort
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube, Sie brauchen, um zu überprüfen, dass Ihre auf eine Datenzeile und nicht die Kopfzeile
Versuchen, diese
versuchen
Wenn die Tabelle gebunden, die mit der raster-Spalte "abbildpfad", dann verwenden Sie stattdessen ein einfacher Weg....
<asp:Image id="img1" runat="server" imageUrl = '<%#Eval("image_path")%>' />
Wenn Sie möchten, bauen einige custome string