在主gridview"GridViewTtransmittals"
中,我有一个名为.的嵌套gridview "GridViewTranstoCon"
。当“GridViewTranstoCon”有数据时,我没有问题,但是当没有任何数据返回错误时,"A data item was not found in the container",
我喜欢它返回空值或让它不可见。代码如下:
protected void GridViewTtransmittals_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.DataItem == null)
return;
TransmittaltoConPresentationModel transmittaltoCon = (TransmittaltoConPresentationModel)e.Row.DataItem;
GridView g2 = (GridView)e.Row.FindControl("GridViewTranstoCon");
if (transmittaltoCon.TranstoCons != null)
{
g2.DataSource = transmittaltoCon.TranstoCons;
g2.DataBind();
}
}
主gridview“GridViewTtransmittals”的数据源代码如下:
private void DisplayTransmittals()
{
if (_Transmittals.Any())
{
var query = from transmittalno in _Transmittals
select new TransmittaltoConPresentationModel { TransID = transmittalno.TransID,
Transmittal = transmittalno.TRANSMITTAL, TranstoCons = from doctranstocon in _DocTranstoCons
where doctranstocon == null || transmittalno.TransID == doctranstocon.Transid
select doctranstocon != null ? doctranstocon.tblTranstoCon : null};
GridViewTtransmittals.DataSource = query;
}
else
{
GridViewTtransmittals.DataSource = null;
}
GridViewTtransmittals.DataBind();
}