У меня есть приложение формы, в котором должны отображаться несколько объектов DataGridView (но не сразу). Они должны быть созданы друг над другом, и тогда должна быть возможность переключения отображаемого DataGridView с помощью ComboBox.
У меня есть функция, которая должна создавать новый DataGridView каждый раз, когда он вызывается, а затем добавляет имя в ComboBox:
private void readCSV(string DBname)
{
DataGridView tagDBname = new DataGridView();
tagDBname.Location = new System.Drawing.Point(24, 260);
tagDBname.Name = DBname;
tagDBname.Size = new System.Drawing.Size(551, 217);
tagDBname.TabIndex = 6;
tagDBname.Columns.Add("Column1", "Col1");
tagDBname.Columns.Add("Column2", "Col2");
tagDBname.Visible = false;
comboBoxTag.Items.Add(DBname);
}
Тогда я бы хотел изменить состояние видимости DataGridView, учитывая выбранное имя из ComboBox. Это должно быть сделано в функции, вызываемой при изменении индекса:
private void comboBoxTag_SelectedIndexChanged(object sender, EventArgs e)
{
// Get the name of the DataGridView which should be visible:
string selectedTagDB = comboBoxTagDatabases.SelectedItem.ToString();
DataGridView tagDatabase = ? // Here the DataGridView should be selected given the name "selectedTagDB"
tagDatabase.Visible = true;
}
Выше я не знаю, как назначить DataGridView только по его имени. Любая помощь будет принята с благодарностью - даже если это означает, что выбранный подход не соответствует тому, чего я пытаюсь достичь. Если на этот вопрос ответят в другом месте, не стесняйтесь направлять меня в правильном направлении:)