У меня есть tabcontrol, а datagridview создается динамически внутри закладки tabcontrol. Мне нужно извлечь выбранные значения строки строки из активного datagridview. Название этой сетки также будет динамически установлено. что я могу сделать, чтобы получить значения столбцов из выбранной строки? Ниже приведен код, который выполняется в случае загрузки формыC# Найти SelectedRow в динамически созданных DataGridView Inside TabControl
foreach (DataTable dtTable in Ds.Tables)
{
DataGridView dgv = new DataGridView();
//dgv.DataSource = dtTable;
dgv.AllowUserToAddRows = false;
dgv.AllowUserToDeleteRows = false;
dgv.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
dgv.Dock = System.Windows.Forms.DockStyle.Fill;
dgv.Location = new System.Drawing.Point(3, 3);
dgv.Name = "dgv_" + dtTable.TableName;
dgv.ReadOnly = true;
dgv.Size = new System.Drawing.Size(725, 322);
dgv.TabIndex = 0;
dgv.AutoGenerateColumns = false;
foreach (DataColumn dtCol in dtTable.Columns)
{
DataGridViewColumn column = new DataGridViewTextBoxColumn();
column.FillWeight = 1;
column.Name = dtCol.ColumnName;
column.DataPropertyName = dtCol.ColumnName;
dgv.Columns.Add(column);
}
//dgv.Columns.AddRange(columns);
dgv.DataSource = null;
dgv.DataSource = dtTable;
lblInfo.Text = string.Format("Rows : {0} ; Columns : {1}", dtTable.Rows.Count, dtTable.Columns.Count);
TabPage tpInstdata = new System.Windows.Forms.TabPage();
tpInstdata.Controls.Add(dgv);
tpInstdata.Location = new System.Drawing.Point(4, 22);
tpInstdata.Name = "tp_" + dtTable.TableName;
tpInstdata.Padding = new System.Windows.Forms.Padding(3);
tpInstdata.Size = new System.Drawing.Size(725, 322);
tpInstdata.TabIndex = 1;
tpInstdata.Text = dtTable.TableName;
tpInstdata.UseVisualStyleBackColor = true;
tcInstTab.TabPages.Add(tpInstdata);
}
код полезен –