だから私は私のウェブページにこのGridViewを持っています。これはデータバインドされているため、RowDataBoundイベント中、このコードは完全に機能します。
protected void myGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TimecardApproval shift = (TimecardApproval)e.Row.DataItem;
}
}
「shift」変数には、必要なすべてのデータが含まれており、うまく機能します。しかし、データを保存するための次のコードがあります。
protected void btnSubmitApprovals_Click(object sender, ImageClickEventArgs e)
{
foreach (GridViewRow item in gvTimeCards.Rows)
{
TimecardApproval shift = (TimecardApproval)item.DataItem;
// code to update the row
}
}
DataItemはnullです!なんで?フィールドがそこにあるので、それがnullであるのは奇妙に思えます。私は何か他のものをループする必要がありますか?