3

textbox1 のユーザー入力に基づいて列の数を追加する次のコードを思いつきましたが、これらの列に名前を追加するにはどうすればよいですか? (追加された列には、一番上の行に A1、A2、A3 のような名前が必要です)

Dim t As Integer
t = Val(TextBox1.Text)
For i = 1 To t
    Form2.DataGridView1.ColumnCount = i
Next

また、datagridview 内の特定のセル、つまりユーザーが編集できないセルをフリーズできますか?

4

3 に答える 3

2

これを試して

DataGridView1.Columns(i).Name = String.Format("A{0}", i)

Columns(i) にアクセスすると、インテリセンスから利用可能なプロパティを表示できます

DataGridView1.Columns(0).Frozen = True;
于 2012-07-29T23:22:40.020 に答える
2

DataGridView には、行または列をフリーズするためのメソッドしかありません。特定のセルの編集をブロックするには、CellBeginEdit イベントのハンドラーを追加してから、編集を禁止するセルの行と列を確認してください。その後、イベントをキャンセルします。

このようなもの:

Private Sub DataGridView1_CellBeginEdit(sender As Object, e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles DataGridView1.CellBeginEdit
    If e.ColumnIndex = 0 And e.RowIndex = 0 Then
        e.Cancel = True
    End If
End Sub
于 2012-07-29T23:42:04.360 に答える
0
 this.dataGridView1.Columns["StudentId"].ReadOnly = true;

から: http://social.msdn.microsoft.com/Forums/en-US/Vsexpressvcs/thread/fef91d76-24c5-4b41-84d7-ba133de2d9a7#b2cb53ec-5b15-4385-b086-28a6dc93dfc9

于 2013-03-19T16:08:47.577 に答える