关于如何处理主从表数据展示同步
当遇到需要通过两个主从关系的GRID来展示数据时,需要对主表在增删改查时同步对从表展示数据进行处理。
因为使用ULTRAGRID的原因,并且数据源并未提前绑定DATASET。而是在查询后直接将查询结果赋值给ULTRAGRID的DATASOURCE。
因此采取以下方法实现:
1、在查询后加入对dataset的判断
if (ds == null || ds.Tables.Count <= 0 || ds.Tables[0].Rows.Count <= 0)
{
if (ultraGridReport.DataSource != null)
{
((DataSet)ultraGridReport.DataSource).Tables[0].Rows.Clear();
if (ultraGridInvoice.DataSource != null)
((DataSet)ultraGridInvoice.DataSource).Tables[0].Rows.Clear();
return;
}
}
2、行激活事件中加入
if (this.ultraGridInvoice.Rows.Count <= 0 || ultraGridInvoice.ActiveRow == null)
{
if (ultraGridReport.DataSource != null)
((DataSet)ultraGridReport.DataSource).Tables[0].Rows.Clear();
return;
}