public ChartCollection(int questionnaireID) { questions = questionsTable.GetDataByID(questionnaireID); Init(questionnaireID); for (int i = 0; i < questions.Count; i++) { charts.Add(new Chart { Size = new Size(461, 428), Padding = new Padding(10, 20, 10, 20), }); Series NumSeries = new Series("人数"); NumSeries.ChartType = SeriesChartType.Column;//柱状图 options = optionsTable.GetData(questionsIDs[i]); string[] counts = new string[options.Count]; for (int k = 0; k < options.Count; k++) { counts[k] = UserAnswerTable.FillByCount(questionnaireID, questionsIDs[i], (k + 1).ToString()).ToString(); NumSeries.Points.AddXY(options[k].optionContent, counts[k]); } charts[i].Series.Add(NumSeries); charts[i].ChartAreas.Add($"ChartAreas{i}"); charts[i].Titles.Add(questions[i].questionName); } }
private void Init() { questions = questionsTable.GetDataByID(questionnaireID); l_questionIntroduce.Text = $"{AnswerQuestionCollection.QuetionNumber + 1}、" + questions.Rows[QuestionNumber][2].ToString(); questionID = int.Parse(questions.Rows[QuestionNumber][0].ToString()); options = optionsTable.GetData(questionID); // arg:question ID //33, 99 sButton.Init(options, int.Parse(questions.Rows[QuestionNumber][4].ToString())); sButton.Location = new Point(33, 89); this.Controls.Add(sButton); }