0

gridview ヘッダーのタイトルを編集しようとしていますが、残念ながら機能しません

SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source = localhost; Initial Catalog = project; Integrated Security= SSPI";
conn.Open();

DataSet ds = new DataSet();

SqlDataAdapter da = new SqlDataAdapter("SELECT policeid, password, email, nric, fullname, contact, address, location From LoginRegisterPolice where pending='pending'", conn);
da.Fill(ds);

GVVerify.DataSource = ds;
GVVerify.DataBind();
GVVerify.Columns[1].HeaderText = "Police ID ";
GVVerify.Columns[2].HeaderText = "Password";
GVVerify.Columns[3].HeaderText = "Email ";
GVVerify.Columns[4].HeaderText = "NRIC ";
GVVerify.Columns[5].HeaderText = "Full Name ";
GVVerify.Columns[6].HeaderText = "Contact ";
GVVerify.Columns[7].HeaderText = "Address ";
GVVerify.Columns[8].HeaderText = "Location ";

conn.Close();

これは私が受け取ったエラーです

インデックスが範囲外でした。負ではなく、コレクションのサイズより小さくなければなりません。

列インデックスが負ではなく、正しい列番号であることを確認しました。グリッドビューに追加allowgenerateselectbuttonしました。したがって、0 ではなく 1 ~ 8 で開始しました。

4

3 に答える 3

1

列プロパティはゼロから始まる配列です。非表示の最初の列がない限り、1 から開始します。インデックスの番号を 1 ~ 8 ではなく 0 ~ 7 に変更します。

http://msdn.microsoft.com/en-US/library/system.windows.forms.datagridview.columns(v=vs.80).aspx

    GVVerify.Columns[0].HeaderText = "Police ID ";
    GVVerify.Columns[1].HeaderText = "Password";
    GVVerify.Columns[2].HeaderText = "Email ";
    GVVerify.Columns[3].HeaderText = "NRIC ";
    GVVerify.Columns[4].HeaderText = "Full Name ";
    GVVerify.Columns[5].HeaderText = "Contact ";
    GVVerify.Columns[6].HeaderText = "Address ";
    GVVerify.Columns[7].HeaderText = "Location ";
于 2013-07-19T03:56:37.307 に答える