10

データグリッドビューを利用する Visual Studio (C#) でアプリケーションを作成しました。ここで、その datagridview の DataSource を割り当てると、最初の行が自動的に選択され、選択のためにコードが実行されます。そのデータソースを頻繁に再割り当てするので、これは望ましくありません。最初の選択を自動的に行わず、ユーザーの選択のみに依存するように変更する方法はありますか?

ありがとう!

Darshan Joshi のコメントへの回答: 自動生成されたコードを除いて、datagridview で変更された唯一のことは、AutoGenerateColumns を false に設定し、DataSource プロパティを設定することです。selectionchanged デリゲートに MessageBox.Show を配置しましたが、データソースが設定されるたびに 3 回も呼び出されるようです。データが読み込まれる直前に 1 回、その後に 2 回。

データソースは初期化時ではなく、特定のユーザーアクションの後に設定されるため、ロード時にselectedをfalseに設定できません。

4

10 に答える 10

0

何も選択せずにグリッドを読み込むには、次のコード スニペットを使用できます。

 GridView.CurrentCell = null;

これにより、何も選択せずにプレーンにロードされます。data-source をグリッドに割り当てた後、これを追加します。

于 2014-02-25T07:27:38.010 に答える
0

次のように form_load イベントで選択を解除できます

  private void Form1_Load(object sender, EventArgs e)
        {
                dataGridView1.Rows[0].Selected = false;
        }
于 2012-09-19T12:49:36.443 に答える
0

フォーム コンストラクターからデータをロードするメソッドを呼び出していないことを確認してください。Form.load() から呼び出す場合

また、myDataGridView がロードされた後、これを行います

myDataGridView.Rows[0].Selected = false;

于 2015-11-01T19:52:40.650 に答える