方法: Windows フォームの DataGridView コントロールの列を非表示にする

Windows フォームの DataGridView コントロールで使用できる列の一部のみを表示したいときがあります。 たとえば、管理の資格情報を持つユーザーには従業員の給与の列を表示し、その他のユーザーには非表示にしたいときがあります。 また、多数の列を含み、その一部のみを表示したいデータ ソースにコントロールをバインドすることもあります。 この場合、通常は列を非表示にするよりは、必要がない列を削除します。

DataGridView コントロールでは、列の Visible プロパティの値により、その列が表示されているかどうかが決定されます。

Visual Studio では、このタスクに対するサポートが用意されています。 「方法: デザイナーを使用して Windows フォーム DataGridView コントロールの列を非表示にする」も参照してください。

プログラムで列を非表示にするには

  • DataGridViewColumn.Visible プロパティを falseに設定します。 データのバインド中に自動的に生成された CustomerID 列を非表示にするには、DataBindingComplete イベント ハンドラーに次のコードの列を配置します。

    this.dataGridView1.Columns["CustomerID"].Visible = false;
    
    Me.dataGridView1.Columns("CustomerID").Visible = False
    

コードのコンパイル

この例で必要な要素は次のとおりです。

  • CustomerID という名前の列を含む dataGridView1 という名前の DataGridView コントロール。

  • System アセンブリおよび System.Windows.Forms アセンブリへの参照。

関連項目