2010-12-07 12 views
0

私はdatagridviewコントロールを持つフォームを持っています。DataGridViewのアイコン

DataGridviewはDataViewにバインドされ、DataViewはDataTableからデータを取得します。アプリケーションは現在の状態で正常に動作しますが、今度はdatagrridviewに新しい列を導入するように変更したいと思います。新しい列はアイコンになります。

私は何とかDataTableのアイコンの新しい列を作成して、DataGridviewに流すことができると仮定しています。どのように私がこれを達成できるかについての助け。コードのバージョンをダウンカット

は、追加の質問として、また

private DataTable _tableDT = new DataTable("dt"); 
private DataView _viewDT = new DataView(); 

_viewDT.Table = _tableDT; 
_tableDT.Columns.Add("Name", typeof(string)); 
_tableDT.Columns.Add("Desc", typeof(string)); 

// populate data table 
_tableDT.Rows.Add(.....) 

dataGridView1.DataSource = _viewDT; 

です。列にアイコンとテキストの両方があることができます。 (理想的には、新しい列には、左側にアイコンがあり、それにテキストが続きます)。

答えて

0

少し読んでください。 VBで書かれていますが、解釈するのは簡単です。

http://arsalantamiz.blogspot.com/2008/04/how-to-display-row-icon-in-datagridview.html

データベースからの画像を読んでいる場合あるいは、あなたは、単に新しいDataGridViewImageColumn列を追加することにより、すべてのハードワークを行うためのDataGridViewを得ることができます。 CellPaintingイベントを無効にすると、行データに基づいてイメージを指定できます。このことができます

http://social.msdn.microsoft.com/forums/en-US/Vsexpressvcs/thread/4f3c8d15-f1f5-4d62-9f26-8a04f683a210

希望、トム:)

+0

現在、私はdatagridview.sourceにdatatableをバインドしています。したがって、データテーブルコントロールには、どの列がdatagridviewに追加されます。あなたが正しくアプローチすることを理解すれば、私は明示的にバインドされていない列を追加する必要があるので、このメソッドを使用することはできません。 –

+0

ahh - 最後のコメントは無視します。私は今進歩しているようだ... –

0

あなたがマイクロソフトからthisチュートリアルを取り、DataGridViewUserControlColumnとしてそれにあなたのUserControlを置くことができます。