void ToggleHeaderFooter(string p_flag, bool p_include) { if (!p_include) { // 先测试扩展位置是否与其他控件冲突 if (_table.TestIncIntersect(1)) { Kit.Warn("增加行后与已有控件位置发生重叠,请调整控件位置后重试!"); return; } _info.ExecuteCmd(RptCmds.ConHeadOrFoot, new ContainHeadOrFootCmdArgs(p_flag, _table)); } else { RptTblPart part; if (p_flag == "Header") { part = _table.Header; } else { part = _table.Footer; } if (part == null || part.Rows.Count == 0) { return; } RptTblPartRow[] rows = new RptTblPartRow[part.Rows.Count]; part.Rows.CopyTo(rows, 0); _info.ExecuteCmd(RptCmds.RemHeadOrFoot, new RemoveHeadOrFootCmdArgs(p_flag, _table, rows)); } UpdateHeaderFooterState(); }
void OnChanged(object sender, Cell e) { if (e.ID == "beforelevel") { _total.Data["beforelevel"] = e.Val; _info.ExecuteCmd(RptCmds.ChangeTotalLocCmd, new SubTotalCmdArgs(_total.Parent, _total)); } else if (e.ID == "span") { _info.ExecuteCmd(RptCmds.ChangeTotalSpanCmd, new SubTotalCmdArgs(_total.Parent, _total, e.GetVal <int>())); } }
void OnAddLevel(object sender, RoutedEventArgs e) { bool isOverlap = false; if (_level.SubTitles.Count > 0) { isOverlap = IsOverLap(); } if (isOverlap) { Kit.Warn("增加行后与已有控件位置发生重叠,请调整控件位置后重试!"); } else { _info.ExecuteCmd(RptCmds.AddSubLevel, new SubLevelCmdArgs(_level.Parent as RptMtxHeader)); } }
void OnChanged(object sender, Cell e) { _info.ExecuteCmd(RptCmds.ChangeTitleSpanCmd, new SubTitleCmdArgs(_title.Parent, _title, e.GetVal <int>())); }