私の DataGridView は多くの型をサポートする必要があり、これらの型には任意の数のパブリック プロパティがあり、すべてを表示したいわけではありません。
クラスをデータソースにバインドするときに、DataGridView の列を動的にカスタマイズする方法を提案できる人はいますか? たとえば、プロパティを列として使用するかどうかをコントロールに伝える属性はありますか?
アドバイスをいただければ幸いです。
私の DataGridView は多くの型をサポートする必要があり、これらの型には任意の数のパブリック プロパティがあり、すべてを表示したいわけではありません。
クラスをデータソースにバインドするときに、DataGridView の列を動的にカスタマイズする方法を提案できる人はいますか? たとえば、プロパティを列として使用するかどうかをコントロールに伝える属性はありますか?
アドバイスをいただければ幸いです。
デフォルトでは (自動列生成が有効になっている場合)、単純に (ComponentModel を介して)[Browsable(true)]
プロパティ (またはこの属性を省略したもの) を取得します。
これがこのデータのバインディングの唯一の用途である場合は、[Browsable(false)]
表示したくないプロパティに追加できます。これにより、これらのプロパティへの通常のデータバインディング ( 、 など) も妨げられることに注意してTextBox
くださいPropertyGrid
。
実際には、独自の属性を作成し、それを使用してリフレクションを介して表示するプロパティを見つける (そして自分で列を作成する) 方が良いと思います。