2017-08-29 31 views
0

最初の行、最初の列に読み込まれたdatagridviewを持つフォームが読み込まれると、ユーザーが入力を開始できるようにします。私が何をしても、ユーザーは入力を開始するためにセルをクリックしなければなりません。 これは私がこれまでにloadイベントのフォームで試したことです。Datagridviewロード時の編集を開始

With dgTable 
     .Focus() 
     .Rows.Add(50) 
     .EditMode = DataGridViewEditMode.EditOnEnter 
     .CurrentCell = .Rows(0).Cells(0) 
     .BeginEdit(False) 

    End With 

私は何をする必要があるのですか?

+0

まず、あなたは、読み[尋ねる]と[ツアー]を取る必要があります。すべてのフォームロードコードが実行されるまで、フォームは表示されません。表示されないので、ほとんどのUIの側面は起こりません。 'Shown'イベントのコードは*表示された後に実行されます* – Plutonix

+0

最後に' .Focus() 'を追加する方法はありますか? – Subaz

+0

私は何か正しいことをしなければ謝罪します。私は尋ねたところで、私が間違っていたことはまだ分かりません。 .focusを最後に追加しても機能しませんでした。私はそれを活性化されたイベントに追加しようとしたが、表示されたイベントを試みたが、それもうまくいかなかった。 – clearfog1962

答えて

0
dgTable.Item(0, 0).Selected = True 

最初のセルを選択して読み込みを許可します。 およびSO .BeginEdit(偽)と.CurrentCell = .Rows(0).Cells(0)

を削除:

With dgTable 
    .Focus() 
    .Rows.Add(50) 
    .EditMode = DataGridViewEditMode.EditOnEnter  
    .Item(0, 0).Selected = True 
End With 
+0

よろしく!おかげでフィリップ – clearfog1962

+0

@ clearfog1962将来的に人々を助けるために受け入れられた答えを記入してください。あなたのために働いてうれしい – Philip556677

0

をコントロールが表示されていないので、負荷イベントは、理想的ではありませんまだ。 EditProgrammaticallyの設定を使用して試してみて、フォームではなく、オーバーライドメソッドを示されています使用:あなたはhaventはので

Protected Overrides Sub OnShown(e As EventArgs) 
    MyBase.OnShown(e) 
    dgTable.EditMode = DataGridViewEditMode.EditProgrammatically 
    dgTable.BeginEdit(False) 
End Sub 
関連する問題