この関数を使用して、グリッドビューからデータテーブルを作成しています。AutoGenerateColumns = False の Gridview で正常に動作し、バインドされたフィールドまたはテンプレート フィールドがあります。しかし、AutoGenerateColumn = True の Gridviews で使用すると、空の DataTable しか返されません。Gridview ビューステートが失われたか何かのようです。Gridview は、If Not IsPostback を使用して PageLoad にバインドされます。それを機能させるために他に何も考えられません。誰かが私を助けてくれることを願っています。
ありがとう、
Public Shared Function GridviewToDataTable(gv As GridView) As DataTable
Dim dt As New DataTable
For Each col As DataControlField In gv.Columns
dt.Columns.Add(col.HeaderText)
Next
For Each row As GridViewRow In gv.Rows
Dim nrow As DataRow = dt.NewRow
Dim z As Integer = 0
For Each col As DataControlField In gv.Columns
nrow(z) = row.Cells(z).Text.Replace(" ", "")
z += 1
Next
dt.Rows.Add(nrow)
Next
Return dt
End Function