Example #1
0
            public static void DataRender2(Func <IDATA, IPager> _pagerFunc, Template.Table _templateTable, IDATA _data, int _tableIndex, int _zIndex, int _innerTableIndex, DataRender_WhilePage_TrGroupFunc _dataRender_WhilePage_TrGroupFunc, DataRender_WhilePageFunc _dataRender_WhilePageFunc, DataRender_WhilePage_LoopFunc _dataRender_WhilePage_LoopFunc)
            {
                Pager pager = (Pager)_pagerFunc(_data);

                while (pager.Next())
                {
                    //if (pager.CurrentPage == 3)
                    //{
                    //    int debug = 0;
                    //}

                    //if (pager.CurrentPage == 5)
                    //{
                    //    int debug = 0;
                    //}

                    //if (pager.CurrentPage == 6)
                    //{
                    //    int debug = 0;
                    //}

                    //if (pager.CurrentPage == 1)
                    //{
                    //    int debug = 0;
                    //}

                    //if (pager.CurrentPage == 2)
                    //{
                    //    int debug = 0;
                    //}

                    int trGroupIndex = 0;

                    //try
                    //{
                    trGroupIndex = _dataRender_WhilePage_TrGroupFunc(_templateTable, _tableIndex, _zIndex, _innerTableIndex, pager, _data);

                    //    // int trGroupIndex = _templateTable.PrepareTrGroup(((Page.DATA2)_data)[_tableIndex][_innerTableIndex]);

                    //}
                    //catch (Exception e)
                    //{
                    //    int __debug__ = 0;
                    //}

                    if (_templateTable.GTRs[trGroupIndex].TRs != null)
                    {
                        //try
                        //{
                        //    // data1 : 1p <=> n datarow
                        //    // data2 : 1p <=> 1 rowitems => n items
                        //    //
                        _dataRender_WhilePageFunc(_templateTable, _tableIndex, trGroupIndex, pager, _data, _dataRender_WhilePage_LoopFunc);
                        //    //
                        //    ////((DATA)_data).DataLayers.Add(new DATA.Layer() { ZIndex = _zIndex, Page = pager.CurrentPage, Begin = pager.PagerInfo.DefaultPageInfo.beginIndex, End = pager.PagerInfo.DefaultPageInfo.endIndex, InnerTableIndex = _innerTableIndex, TrGroupIndex = trGroupIndex, IsEndPoint = true });
                        //}
                        //catch (Exception e2)
                        //{
                        //    int __debug2__ = 0;
                        //}
                    }
                    else if (_templateTable.GTRs[trGroupIndex].InnerTables != null)
                    {
                        /* for DATA2 */

                        for (int i = 0, iMax = _templateTable.GTRs[trGroupIndex].InnerTables.Count; i < iMax; i++)
                        {
                            Template.Table innerTable = _templateTable.GTRs[trGroupIndex].InnerTables[i];

                            var innerDATA = ((DATA2)(_data))[_tableIndex][pager.CurrentPage - 1].InnerRowItems[i];

                            if (innerDATA == null)
                            {
                                throw new ArgumentException(string.Format("InnerTables DATA NULL [trGroupIndex:{0}] [tableIndex:{1}] [currentPage:{2}]", trGroupIndex, _tableIndex, pager.CurrentPage));
                            }

                            DATA2 innerDATA2 = new DATA2((DATA2)_data);

                            innerDATA2.Add(0, innerDATA);

                            //InnerDataRender innerDataRender = new InnerDataRender();

                            ////((DATA)_data).DataLayers.Add(new DATA.Layer() { ZIndex = _zIndex, Page = pager.CurrentPage, Begin = pager.PagerInfo.DefaultPageInfo.beginIndex, End = pager.PagerInfo.DefaultPageInfo.endIndex, InnerTableIndex = i, TrGroupIndex = trGroupIndex, IsEndPoint = false });
                            //
                            Page.InnerDataRender.DataRender2(_pagerFunc, innerTable, innerDATA2, _tableIndex, (_zIndex + 1), (i), _dataRender_WhilePage_TrGroupFunc, _dataRender_WhilePageFunc, _dataRender_WhilePage_LoopFunc);
                            //
                            // # 2018.06.07 # disabled
                            //
                            //_templateTable.TLogs.Add(new Template.Table.TLog(trGroupIndex, -1));
                            //
                        }
                        //
                        // # 2018.06.07 # enable
                        //
                        _templateTable.TLogs.Add(new Template.Table.TLog(trGroupIndex, -1));
                        //
                    }

                    //if (pager.CurrentPage == 3)
                    //{
                    //    int debug = 0;
                    //}
                }
            }