1
我動態創建dgv,我必須在其單元格單擊事件,我該怎麼做? 現在,當我創建cellclick事件時,它什麼都不會觸發。動態創建datagridview單元格單擊事件不起作用
代碼,以使DGV:
dataGridView2 = new DataGridView();
DataGridViewColumn col1 = new DataGridViewImageColumn
{
ImageLayout = DataGridViewImageCellLayout.Stretch
};
DataGridViewColumn col2 = new DataGridViewImageColumn
{
ImageLayout = DataGridViewImageCellLayout.Stretch
};
DataGridViewColumn col3 = new DataGridViewTextBoxColumn();
DataGridViewColumn col4 = new DataGridViewLinkColumn();
DataGridViewColumn col5 = new DataGridViewTextBoxColumn();
DataGridViewColumn col6 = new DataGridViewTextBoxColumn();
DataGridViewColumn col7 = new DataGridViewTextBoxColumn();
col1.HeaderText = "TPM Image";
col1.Name = "image_tpm";
col1.Width = 60;
col2.HeaderText = "Find Image";
col2.Name = "image_thefind";
col2.Width = 60;
col3.HeaderText = "Name";
col3.Name = "name";
col3.Width = 150;
col4.HeaderText = "URL";
col4.Name = "product_url";
col4.Width = 100;
col5.HeaderText = "Price";
col5.Name = "price";
col5.Width = 70;
col6.HeaderText = "Accuracy";
col6.Name = "image_accuracy";
col6.Width = 52;
col7.HeaderText = "History";
col7.Name = "history";
col7.Width = 200;
dataGridView2.Columns.Add(col1);
dataGridView2.Columns.Add(col2);
dataGridView2.Columns.Add(col3);
dataGridView2.Columns.Add(col4);
dataGridView2.Columns.Add(col5);
dataGridView2.Columns.Add(col6);
dataGridView2.Columns.Add(col7);
dataGridView2.Location = new System.Drawing.Point(650, 20);
dataGridView2.Size = new System.Drawing.Size(702, 413);
this.Controls.Add(dataGridView2);
我cellClickEvent
private void dataGridView2_CellClick(object sender, DataGridViewCellEventArgs e)
{
try
{
if (dataGridView2.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString().Contains("http:"))
{
Process.Start(dataGridView2.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString());
}
}
catch
{
}
}
但什麼也沒有發生。
是'自動回= TRUE'也應爲GridView的設置? – Cdeez
我在Windows窗體中工作,而不是在網站應用程序中。 – Paz
當我不使用動態dgv時,相同的代碼正在工作。但由於我的代碼,我必須使用動態創建的dgv。 – Paz