我正在处理遗留的Windows窗体项目,我正在迁移到webforms。
我有一个绑定到gridview的数据集。
我已经制作了所有的边界,因此gridview不会自动生成列。每当我将此数据集绑定到网格时,数据集中缺少某些列,因此它会抛出有关不存在列的错误。
有没有办法忽略绑定字段中缺少的列?比如,删除绑定列,如果它不存在......或者只是忽略它?
答案 0 :(得分:0)
我不得不使用不同的方法:
我将gridview设置为没有列,autogeneratecolumns
设置为false
。
然后我用所有可能列的列表创建了一个XML(这是一个XML,而不是asp.net标记)
<Grid ID="grdSenha">
<BoundField HeaderText="Status" />
<BoundField DataField="Flg_Imprimiu" HeaderText="Imprimiu?" Visible="True" />
<BoundField DataField="Nom_Localdest" HeaderText="Local Descarga" Visible="True" />
<BoundField DataField="Dsc_Localdest" HeaderText="Descrição" Visible="True" />
<BoundField DataField="Cod_Produto" HeaderText="Cod Prod" Visible="False" />
<BoundField DataField="Dsc_Produto" HeaderText="Descrição Produto" Visible="True" />
<BoundField DataField="Qtd_Transport" HeaderText="Qtde" Visible="True" />
<BoundField DataField="Cod_Transport" HeaderText="Cod Trans" Visible="False" />
[...]
</Grid>
然后,在我的代码中,我只从XML中选择我的数据源中的列(使用DataField作为键),然后相应地创建绑定字段。
效果很好。