• 締切済み

DataGridViewで右寄せ左寄せが反映されない

新規フォームにDataGridViewを追加して、 Loadイベントに以下のコードを追記したのですが、 Alignmentの部分が正しく反映されません。 1行目は左寄せ、2行目は右寄せにしたいのですが 実際は1行目2行目ともに右寄せになります。 どのようにコーディングすれば個別に設定できるのでしょうか? Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim dt As New DataTable dt.Columns.Add("AccCode") dt.Columns.Add("AccName") dt.Rows.Add(dt.NewRow()) dt.Rows(0)("AccCode") = String.Empty dt.Rows(0)("AccName") = "てすとA" dt.Rows.Add(dt.NewRow()) dt.Rows(1)("AccCode") = String.Empty dt.Rows(1)("AccName") = "てすとB" Me.dgv.DataSource = dt ' コードのテキストを右寄せ dgv.Columns("AccName").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight dgv(0, 0).Style.Alignment = DataGridViewContentAlignment.MiddleLeft dgv(0, 1).Style.Alignment = DataGridViewContentAlignment.MiddleRight End Sub

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

設定しようとしているセルの指定を間違えているのでは dgv(n,m) といった記述だと n列目 m行目のセルということになります dgv(0,0)だと 1行目のAccCode dgv(0,1)だと 2行目のAccCode になりますよ AccNameを設定したいなら dgv(1,0)またはdgv(1,1)といった具合になると思いますが ・・・ または 列名で指定するようにして dgv("AccName", 0 ) または dgv("AccName",1) といった具合でしょうか