private void InitData() { IEnumerable <string> variables = Content.PreprocessingData.GetDoubleVariableNames(); comboBoxXVariable.Items.Clear(); comboBoxYVariable.Items.Clear(); comboBoxGroup.Items.Clear(); comboBoxXVariable.Items.AddRange(variables.ToArray()); comboBoxYVariable.Items.AddRange(variables.ToArray()); comboBoxGroup.Items.Add(NoGroupItem); foreach (string var in PreprocessingChartContent.GetVariableNamesForGrouping(Content.PreprocessingData, 50)) { comboBoxGroup.Items.Add(var); } comboBoxGroup.SelectedItem = Content.GroupingVariable ?? NoGroupItem; // use x and y variable from content if (Content.SelectedXVariable != null && Content.SelectedYVariable != null && Content.GroupingVariable != null) { comboBoxXVariable.SelectedItem = Content.SelectedXVariable; comboBoxYVariable.SelectedItem = Content.SelectedYVariable; comboBoxGroup.SelectedItem = Content.GroupingVariable; } else { if (variables.Count() >= 2) { comboBoxXVariable.SelectedIndex = 0; comboBoxYVariable.SelectedIndex = 1; comboBoxGroup.SelectedIndex = 0; UpdateScatterPlot(); } } }
protected override void OnContentChanged() { base.OnContentChanged(); groupingComboBox.Items.Clear(); groupingComboBox.Items.Add(string.Empty); if (Content != null) { foreach (string var in PreprocessingChartContent.GetVariableNamesForGrouping(Content.PreprocessingData)) { groupingComboBox.Items.Add(var); } groupingComboBox.SelectedItem = Content.GroupingVariableName ?? string.Empty; } }
protected override void OnContentChanged() { base.OnContentChanged(); if (Content != null) { groupingComboBox.Items.Add(string.Empty); foreach (string var in PreprocessingChartContent.GetVariableNamesForGrouping(Content.PreprocessingData)) { groupingComboBox.Items.Add(var); } SuppressCheckedChangedUpdate = true; groupingComboBox.SelectedItem = Content.GroupingVariable ?? string.Empty; SuppressCheckedChangedUpdate = false; // uncheck variables that max 20 vars are selected initially var variables = Content.VariableItemList; int numChecked = variables.CheckedItems.Count(); if (numChecked > 20) { string message = string.Format("Display all {0} input variables ({1} charts)?" + Environment.NewLine + "Press No to reduce the number of checked variables to 20." + Environment.NewLine + "Press Cancel to uncheck all.", numChecked, numChecked * numChecked); var dialogResult = MessageBox.Show(this, message, "Display All Input Variables?", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning); if (dialogResult == DialogResult.No || dialogResult == DialogResult.Cancel) { SuppressCheckedChangedUpdate = true; IEnumerable <StringValue> toUncheck = variables; if (dialogResult == DialogResult.No) // only show the first 20 { toUncheck = variables.CheckedItems.Reverse().Take(numChecked - 20).Select(x => x.Value); } foreach (var var in toUncheck) { Content.VariableItemList.SetItemCheckedState(var, false); } SuppressCheckedChangedUpdate = false; } } GenerateCharts(true); } }