答えて
私がこれを行う方法を知っている唯一の方法は、グリッド上にいくつかのイメージを描画するためにトリックを使用してグリッド内にテキストボックスを描画するトリックのようなものです。 CF team posted something about customising the grid on their site.
の
一つサードパーティのソリューションを使用することができます場合は、RescoのSmartGridを見ています。
それはmultiline rows、changing row colors、making the text right-to-left、またはhighlighting a rowをやってと同じプロセスです:あなたはcustom drawする必要があります。
他のポスターがコメントしたように、自分でロールする必要があります。幸いにも、これはそれほど難しいことではありません。
私のアプリケーションでは、特定の列に16x16のアイコンを描画する方法が必要でした。 DataGridColumnStyle
から継承する新しいクラスを作成しました。DataGridTableStyle
オブジェクトを使用してDataGrid
に簡単に適用できます。
class DataGridIconColumn : DataGridColumnStyle {
public Icon ColumnIcon {
get;
set;
}
protected override void Paint(Graphics g, Rectangle bounds, CurrencyManager source, int rowNum, Brush backBrush, Brush foreBrush, bool alignToRight) {
// Fill in background color
g.FillRectangle(backBrush, bounds);
// Draw the appropriate icon
if (this.ColumnIcon != null) {
g.DrawIcon(this.ColumnIcon, bounds.X, bounds.Y);
}
}
}
あなたは私が、私は、私はこのクラスの外に表示する必要があるアイコンを指定することができますパブリックプロパティColumnIcon
を定義していることがわかります。
、実際にデータグリッド上でそれを使用するために、次のようなスニペットがあるだろう:DataGridTableStyle
を適用するための非常に単純な例です
DataGridTableStyle ts = new DataGridTableStyle();
DataGridIconColumn dgic = new DataGridIconColumn();
dgic.ColumnIcon = Properties.Resources.MyIcon;
dgic.MappingName = "<your_column_name>";
dgic.HeaderText = "<your_column_header>";
ts.GridColumnStyles.Add(dgic);
this.myDataGrid.TableStyles.Add(ts);
を - 私は実際にはさらに多くのカスタマイズを行います私のDataGrid
の残りの列。しかし、それはあなたが何をしたいかを始める必要があります。
http://www.cf-technologies.net/compactgrid.php。セルのCustomDrawイベントを使用することができます..
- 1. Rhino Mocks&Compact Framework
- 2. asp:画像表示画像
- 3. 画像表示
- 4. 表示画像
- 5. 表示画像
- 6. 表示画像
- 7. 表示画像
- 8. 画像表示
- 9. 表示画像
私はセルに画像をロードする必要がある場合?どうすればいいのですか ? – user3383301