wie die Spalte in der gridview-Steuerelements ein Bild?
Ich habe ein gridview, die angelegt wird, in der codebehind.
In der folgende code würde ich gerne haben 3. Spalte ein Bild (Z.B.: PDF-Symbol oder ähnliches).
Ich bin am überlegen Type.GetType
geändert werden muss für die Spalte "Bild"??
DataTable dt = new DataTable();
GridView gview = new GridView();
DataRow dr;
DataColumn dc = new DataColumn("Description", Type.GetType("System.String"));
dt.Columns.Add(dc);
dc = new DataColumn("Image", Type.GetType("System.String"));
dt.Columns.Add(dc);
dc = new DataColumn("Size (MB)", Type.GetType("System.String"));
dt.Columns.Add(dc);
{
dr = dt.NewRow();
dr["Description"] = item["Name"];
dr["Size (MB)"] = item["Size"];
dr["Image"] = "pdf.gif"; //put complete reference here,
dt.Rows.Add(dr);
}
gview.DataSource = dt;
gview.DataBind();
Controls.Add(gview);
InformationsquelleAutor Anirudh | 2011-11-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Speichern nur die Bild-URL in die DataTable, anstatt das eigentliche Bild. Verwenden Sie dann einen
TemplateField
in Ihrem GridView-Steuerelement, und legen Sie ein Bild in derItemTemplate
:Können Sie auch eine
ImageField
:BEARBEITEN
Bei der Deklaration der Spalten, versuchen Sie dies statt:
Und der Wert von der Spalte Bild, versuchen Sie dies:
Anstatt zu versuchen, speichern Sie ein Bild in DataTable speichern nur den Pfad zum Bild, also
/images/somepic.png
. DieImageUrlColumn
ist nur dazu gedacht, zu zeigen, die Idee.Ich bin die Speicherung der Pfad nur (wie geschrieben im ersten post) und den Pfad habe einige Ordner, wie du Sie erwähnt hast. Ich bin immer noch nicht warum brauche ich, um das templatefield/itemfield, die Sie erwähnt, und, wenn erforderlich, bei denen zu verbinden, die es in der gridview. bitte klären Sie. Dank
Sie müssen das Feld Vorlage eingeben, wird das Bild in die GridView. Sie können auch eine
ImageField
auch, wenn Sie das lieber. Siehe editiert Antwort für wie Sie einImageField
.so in der ASPX-ich put <asp:ImageField DataImageUrlField="ImageNameColumn" DataImageUrlFormatString="/images/pdf.png"></asp:ImageField> und dann im code hinter Verbinde ich dr["Image"] = diese.ImageNameColumn; Habe ich Folgen, richtig?
InformationsquelleAutor James Johnson
In der grid-Ansicht put-Befehl-Feld-Spalte wie folgt
<asp:CommandField runat="server" ShowDeleteButton="true" ButtonType="Image" DeleteImageUrl="images/delete.png" ></asp:CommandField>
legen Sie das gridview-Eigenschaft wie in der folgenden
AutoGenerateDeleteButton="false"
InformationsquelleAutor seetha