public override void SetView(Webb.Reports.ExControls.Views.ExControlView i_View) { //clear trees this.C_GroupInfoTree.Nodes.Clear(); this.C_SeriesTree.Nodes.Clear(); WebbChartView chartView = i_View as WebbChartView; //set group tree GroupInfo m_GroupInfo = null; m_GroupInfo = chartView.RootGroupInfo; while (m_GroupInfo != null) { TreeNode m_node = new TreeNode(m_GroupInfo.ToString()); m_node.Tag = m_GroupInfo.Copy(); this.C_GroupInfoTree.Nodes.Add(m_node); GroupInfo subGroupInfo = null; if (m_GroupInfo.SubGroupInfos.Count > 0) { subGroupInfo = m_GroupInfo.SubGroupInfos[0]; } m_GroupInfo = subGroupInfo; } //set series tree foreach (ChartSeries series in chartView.Series) { TreeNode m_node = new TreeNode(series.ToString()); m_node.Tag = series.Copy(); this.C_SeriesTree.Nodes.Add(m_node); } }
public override void UpdateView(Webb.Reports.ExControls.Views.ExControlView i_View) { //update group GroupInfo m_GroupInfo = null; for (int i_Index = 0; i_Index < this.C_GroupInfoTree.Nodes.Count; i_Index++) { if (i_Index > 0) { m_GroupInfo.SubGroupInfos.Clear(); m_GroupInfo.SubGroupInfos.Add(this.C_GroupInfoTree.Nodes[i_Index].Tag as GroupInfo); m_GroupInfo = m_GroupInfo.SubGroupInfos[0]; } else { m_GroupInfo = this.C_GroupInfoTree.Nodes[i_Index].Tag as GroupInfo; } m_GroupInfo.SubGroupInfos.Clear(); } WebbChartView m_GroupView = i_View as WebbChartView; GroupInfo m_RootGroupInfo = this.C_GroupInfoTree.Nodes[0].Tag as GroupInfo; m_GroupView.RootGroupInfo = m_RootGroupInfo; //update summaries m_GroupView.Series.Clear(); for (int i_Index = 0; i_Index < this.C_SeriesTree.Nodes.Count; i_Index++) { m_GroupView.Series.Add(this.C_SeriesTree.Nodes[i_Index].Tag as ChartSeries); } }