public cReportPaintObject getPaintObjByCtrlNameEx(String ctrlName, int indexField)
{
CSReportDll.cReportPageField fld = null;
CSReportDll.cReportPageFields fields = null;
int offset = 0;
CSReportDll.cReportPage w_item = m_report.getPages().item(m_currPage);
fields = w_item.getHeader();
offset = C_OFFSETHEADER;
fld = getFieldByCtrlName(ctrlName, fields, indexField);
if (fld == null)
{
fields = w_item.getDetail();
offset = C_OFFSETDETAIL;
fld = getFieldByCtrlName(ctrlName, fields, indexField);
if (fld == null)
{
fields = w_item.getFooter();
offset = C_OFFSETFOOTER;
fld = getFieldByCtrlName(ctrlName, fields, indexField);
if (fld == null)
{
return null;
}
}
}
for (int _i = 0; _i < m_paint.getPaintObjects().count(); _i++)
{
var paintObj = m_paint.getPaintObjects().item(_i);
if (fields.item(paintObj.getIndexField() - offset) == fld)
{
if (isInThisLine(ctrlName, indexField, fld))
{
return paintObj;
}
}
}
return null;
}