2011-01-03 13 views
0
gvOff.DataSource = o.ViewData(dCity.SelectedValue); 
    gvOff.DataBind(); 
    gvOff.Columns[0].HeaderText = "ZZZZZZZZ"; 
    gvOff.Columns[1].HeaderText = "YYYYYYYY"; 
    gvOff.Columns[2].HeaderText = "XXXXXXXX"; 

ヘッダー数が正しいです。GridView.Columns [index] .HeaderText "インデックスが範囲外です"エラーを返します。エラー

AutoGenerateColumns:Flase /トゥルー(私は両方試してみました)

私はgvOff.Columns [インデックス] .HeaderText部分を削除した場合、GridViewコントロールが正常に動作しますが、私はgvOff.Columnsを入れたときに[0 ] .HeaderText、私は例外的なエラーを取得します。

助けてもらえませんでしたか?さらに詳しい情報が必要な場合は、私に知らせてください。


編集:

を待って!私はHeaderText部分をコメントし、テストしました

int i = gvOffer.Columns.Count;

DataBind()で列が印刷されても、カウントは0ですが...なぜですか?

注:この場合、AutoColumnはtrueに設定されています。私はDataTableから列 の名前を編集する必要があると思います。

+1

データソースが有効で、列数が> 0であることを確認してください。 – Pabuc

+0

はい、非常に確実です! – user311509

+0

ホールド!私はHeaderText部分にコメントし、テストしました:int i = gvOffer.Columns.Count; DataBind()で列が印刷されても、カウントは0ですが...なぜですか? – user311509

答えて

0

解決済み...私はSQLクエリエイリアスを使用してカラム名を変更しましたが、これは私のアプリケーションに反映されています。例:

SELECT orderID AS [XXXXX], name AS [YYYYY] FROM TableName 
関連する問題