1

セルの代わりにカスタム コントロールを表示するカスタム DataGridViewCell を作成しました。ただし、DataGridView が共有行を使用する場合、カスタム コントロール インスタンスも共有されるため、奇妙な動作が発生します (たとえば、ボタンにカーソルを合わせると、すべてのボタンが強調表示されます)。また、DataGridViewCell.Selected プロパティにアクセスできないため、行を何色でペイントすればよいかわかりません。

DataGridView が行を共有しないようにするにはどうすればよいですか? Rows.Add(object[]) オーバーライドを使用して行を追加できることはわかっていますが、最初の行はまだ共有されている (つまり、インデックスが -1 である) ため、色の問題は引き続き適用されます。

カスタム セルを含む行を共有しないように DataGridView に指示できるようにする必要があります。それは属性で行うことができますか?それはまったくできますか?

4

2 に答える 2

4

行の 1 つのセルにツールチップ テキストを設定してみてください

次のいずれかの状況では、行を共有できません: 行に、選択された列にない単一の選択されたセルが含まれている。行には、ToolTipText または ContextMenuStrip プロパティが設定されたセルが含まれています。行には、Items プロパティが設定された DataGridViewComboBoxCell が含まれています。

または読む

http://msdn.microsoft.com/en-us/library/ha5xt0d9.aspx

詳細については

于 2008-10-23T12:48:05.180 に答える
1
DataGridViewRowCollection.AddRange(params DataGridViewRow[] dataGridViewRows)

new[]{someDataGridviewRow}

私のために働いた。

于 2009-11-30T14:06:59.130 に答える