2009-07-29 14 views
1

dataGridViewにスライドするカスタムビジネスオブジェクトを作成することは、奇妙なことに作用します。ただし、プログラムで列の順序を設定することはできません。カスタムビジネスオブジェクトのdataGridViewColumnの順序を制御するにはどうすればよいですか?

手動でもう一度手作業で追加する必要がありますか?もっと素敵な並べ替えを取得するにはどうすればよいですか、使用できる秘密の隠し属性がありますか?

答えて

2

各DataGridViewColumnはDisplayIndexプロパティとして適用され、いつでも適用でき、AutoGenerateColumnsをtrueに設定しても機能します。

+0

右ですが、これは、データソースから列を削除するたびに、並べ替えから削除することを忘れた場合、「colName」が見つからない場合に例外が発生するようになりました。私はビジネスオブジェクトのプロパティを置くことができる属性タグのようなよりダイナミックなソリューションを望んでいました。 – Maslow

+0

この回答を最も簡単な方法として受け入れていますが、もっと強く型付けされたオプションが本当にあることを願っています。 – Maslow

0

AutoGenerateColumnsが現在trueに設定されていることを前提としています。列の順序を制御する方法がわかっているのは、AutoGenerateColumnsfalseに設定して、あなたが言ったように手動で列を追加することです。

EDIT:


私はこれを行うための別の方法のあいまいな記憶に見て、あなたがIAutoFieldGeneratorオブジェクトを受け取りGridViewコントロールのColumnsGeneratorプロパティに見てみたいことがありますと思います。このインターフェイスには、​​コントロール(theグリッド) and returns an ICollection `(of fields)という1つのメソッドがあります。

関連する問題