バインドされたグリッドビューのカスタム出力はどうすればできますか?私。私は<%#DataBinder.Eval(Container.DataItem、 "BoolField")%>から取得するとTrueを書き出すのではなく、データベースにブール値フィールドを持っています。グリッドビューで表示します。これは可能ですか?データグリッドの出力イメージ
答えて
すべての評価の第一は悪です。 evalとの解決策がありますが、私はそれを意図的にスキップします。
他にも2つの解決策があります。 ImageFieldを使用してデータをシェイプして、ImageFieldのDataImageUrlFieldプロパティで指定する必要がある特別なプロパティで、ピクチャの関連URLを渡すことができます。
Imageコントロールを使用してテンプレートフィールドを追加し、RowDataBoundイベントを処理するもう1つの方法は、イベント引数e.Row.DataItemから行のデータを取得することです。データソース内のアイテムの型にキャストし、ブール値を抽出します。次に、FindControlを使用してImageコントロールを取得し、そのプロパティを取得します。このような何か:
protected void Page_Load(object sender, EventArgs e)
{
gvTest.DataSource = new bool[] { true, false };
gvTest.DataBind();
}
protected void gvTest_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Image imgBool = (Image)e.Row.FindControl("imgBool");
bool data = (bool)e.Row.DataItem;
if (data)
{
imgBool.ImageUrl = "/images/true.jpg";
imgBool.AlternateText = "This is true";
}
else
{
imgBool.ImageUrl = "/images/false.jpg";
imgBool.AlternateText = "This is false";
}
}
}
これは多くの作業のように見えるが、あなたはタイプセーフな方法であなたのグリッド内のすべてのcolumsで動作するように、この同じハンドラを使用することができることを覚えているかもしれません。
あなたは私が書いたものを読んだのか、それともグーグルグッドですか?私は画像のURLを出力しようとしていません。 – Sam
img htmlタグにはsrc paramが必要です。それは画像のURLを指定します。 –
- 1. WPFデータグリッドでsp_who2の出力を表示
- 2. データベースからデータグリッドへのイメージの取得#
- 3. PHPのImagickイメージから生のイメージを出力します
- 4. イメージを出力するASPX出力キャッシュ可能?
- 5. CIFilterの出力イメージが以前の出力イメージをランダムに表示しています
- 6. イメージ出力が動作しないphp
- 7. 別のデータグリッドから別のデータグリッドにデータグリッドを移入する
- 8. 防ぐには、データグリッドのDevExtreme jsのデータグリッド
- 9. は別のデータグリッド内のデータグリッドを追加
- 10. 文字列の代わりにPHPの出力イメージ
- 11. JavaFX 2のScenegraphの内容をイメージに出力する方法
- 12. データグリッド
- 13. GridViewの出力をイメージに保存する方法は?
- 14. RGBイメージを3つのHSI出力に変換する
- 15. イメージのサイズ変更されたBase64出力を表示
- 16. Codeigniterがイメージlibの出力ディレクトリを設定しました
- 17. SQLイメージのデータ型をクエリして文字列に出力
- 18. オブジェクトのリストにバインドされたデータグリッド内のリソースからのイメージの表示
- 19. イメージファイルから日付を抽出してlinuxのイメージに出力するには
- 20. データグリッドのoboutコンボボックス
- 21. データグリッドのSelectedItem
- 22. データグリッドのSelectedItem多
- 23. angular4のデータグリッド
- 24. データグリッドのフォーマット値
- 25. データグリッドGridViewの
- 26. asp.net 2.0のデータグリッド
- 27. データグリッドのクロスタブc#
- 28. データグリッドのコンボボックス
- 29. zendフレームワークのデータグリッド
- 30. データグリッドのフォントサイズ
ありがとうございました。 – Sam
私はEvalがなぜ悪いのですか? – Sam
Evalは文字列ベースなので悪いです。グリッドをプロダクトのリストにバインドし、Evalを介してProductNameプロパティにいくつかの列をバインドしているとします。ただし、後でプロパティ名を「名前」に変更することにします。 evalを使用すると、コンパイル時のエラーは発生しません。データバインドイベントを介してバインドする場合は、 FindControlでも文字列が使用されていますが、FindControlは単一のファイル(マークアップとコードの背後にあるファイル)でスコープされており、コントロールの名前を変更すると関連するコードパスを確認する可能性が高くなります。 – Stilgar