データベースから返される値に応じて、DevExpressデータグリッドにアイコンを設定するにはどうすればよいですか
18768 次
1 に答える
18
手順は次のとおりです。
- フォーム/ウィンドウにImageCollectionを追加し、16x16のアイコンを追加します。
- アイコンの列をグリッドに追加します。
- 列のfieldNameをimageに設定します(好きなものは何でも)。
- 列のUnboundTypeをObjectに設定します。
- カラムのcolumnEditにrepositoryItemPictureEditを追加します。
上記はすべてデザイナーで行うことができます。次に、次の手順を実行します
private void gridView1_CustomUnboundColumnData(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e)
{
if (e.Column == colImage1 && e.IsGetData) {
string someValueFromDatabase = (string)gridView1.GetRowCellValue(e.RowHandle, colOne);
if (someValueFromDatabase == "a") {
//Set an icon with index 0
e.Value = imageCollection1.Images[0];
} else {
//Set an icon with index 1
e.Value = imageCollection1.Images[1];
}
}
}
ここで重要なのは、CustomUnboundColumnDataとrepositoryItemPictureEditを処理することです。
于 2010-11-29T04:23:01.360 に答える