2009-04-24 16 views
2

私はグリッドビューを持っており、1つのcoulmnはイメージ列です。 私のコードのDataImageUrlFormatString値をどのように変更するのですか?イメージ内のDataImageUrlFormatString値を変更する方法

((ImageField)(GridView2.Rows[0].Cells[0].FindControl("ID"))).DataImageUrlFormatString 

= "~/createthumb.ashx?gu=/pics/gmustang06_2.jpg"; 

答えて

4

はこのお試しください.......私はこれをやってみましたが、それは動作しません:あなたはURLを設定することができます

((System.Web.UI.WebControls.Image)(GridView2.Rows[0].Cells[0].Controls[0])).ImageUrl = "~/createthumb.ashx?gu=/pics/gmustang06_2.jpg"; 

EDITを宣言的な構文で画像コントロールに表示される画像のパスを返します。

GridViewコントロールのOnRowDataBoundイベントを処理することにより
<asp:ImageField DataImageUrlField="id" DataImageUrlFormatString="img{0}.jpg"></asp:ImageField> 

や背後にあるコードで:それは作業を行い

protected void grd_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 
     Image img = e.Row.Cells[0].Controls[0] as Image; 
     img.ImageUrl = "img" + DataBinder.Eval(e.Row.DataItem, "id") + ".jpg"; 
    }  
} 
+0

おかげで、私は何をしなければなりませんし、ここで、iは、各セルのImageフィールドを変更したい場合やセル[0]だけではありません。私は、私のGridViewにIDフィールドと私はDBから取得する画像フィールドを持っているように。 IDが1の場合はImage1.jpgを表示し、IDが2の場合はImage2.jpgなどを表示します。これは私のRowDataBoundイベントで行う必要がありますか? – Etienne

関連する問題