DOBON.NET

DataGridComboBoxColumn Class

注意:DataGridComboBoxColumnクラスの最新版は、「DataGridにComboBoxを表示可能な列を作る」からダウンロードできます。

「DataGridComboBoxColumnクラス」は、ComboBoxをDataGrid(System.Windows.Forms.DataGrid)に表示するためのクラスです。このクラスは、以下に示すページで紹介されているコードを参考にして作成しました。

本当なら、「Generating Combo Box in DataGrid Column」のようにDataGridColumnStyleクラスからの派生クラスとすべきかもしれませんが、ここでは手を抜いてDataGridTextBoxColumnクラスからの派生クラスとしています。

このDataGridComboBoxColumnクラスは、コンストラクタでComboBoxのDataSource、DisplayMember、ValueMemberプロパティに設定するデータを指定して使用します。ComboBoxとDataGridに表示されるデータは、DisplayMemberで指定されたデータになりますが、実際のデータはValueMemberで指定されたデータとなります。表示するデータと実際に使われるデータが同じでよければ、DisplayMemberとValueMemberを同じにしてもかまいません。また、DataSourceにはDataViewオブジェクトを指定します。

なお、DataGridComboBoxColumnクラスの仕様は次のようなものです。

  • コンボボックスのDropDownStyleプロパティはComboBoxStyle.DropDownListです。
  • ReadOnlyの時は、コンボボックスが表示されません。
  • ComboBoxのDataSourceをDataGridで使用しているDataSourceと同じにすると、不都合が起こるかもしれません。
  • ComboBoxをキーで操作することはできません。
  • ComboBoxのValueMemberに登録されていないデータがDataGridで使用されている場合、DBNullとして表示されます。

ダウンロード

注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。

  • .NET Tipsをご利用いただく際は、注意事項をお守りください。
共有する

この記事への評価

この記事へのコメント

この記事に関するコメントを投稿するには、下のボタンをクリックしてください。投稿フォームへ移動します。通常のご質問、ご意見等は掲示板へご投稿ください。