C# 无法在datagridview中打开浏览
我有一个DataGridView,如图所示,当我单击“从文件浏览”时,必须打开一个OpenFileDialog。我相信如果我用按钮单击方法来编写代码是不可能的,但是我不知道用哪种方法来编写代码。请帮忙 到目前为止,我已经做到了:(希望有帮助)C# 无法在datagridview中打开浏览,c#,datagridview,openfiledialog,C#,Datagridview,Openfiledialog,我有一个DataGridView,如图所示,当我单击“从文件浏览”时,必须打开一个OpenFileDialog。我相信如果我用按钮单击方法来编写代码是不可能的,但是我不知道用哪种方法来编写代码。请帮忙 到目前为止,我已经做到了:(希望有帮助) string[]col2=新字符串[dataGridView1.Rows.Count]; 对于(int i=0;i
string[]col2=新字符串[dataGridView1.Rows.Count];
对于(int i=0;i
将代码放入DataGridView.CellValueChanged
事件中。使用SelectedCells
属性查找当前单元格,然后检查其值是否为“从文件浏览…”。如果是这样,请启动OpenFileDialog.ShowDialog()
调用
有关CellValueChanged的信息,请参阅此文档:到目前为止我在这里的可能重复项:
//如果(dataGridView1.SelectedCells=“从文件浏览…”){}如果(dataGridView1.Rows[1].Cells[“从文件浏览…”。Value.ToString()=“从文件浏览…”){openFileDialog2.ShowDialog()}
请帮助大副。无法理解SelectedCells将如何工作,因此我尝试使用Rows.Cells.Value.ToString
SelectedCells只是所选单元格的列表。SelectedCells[0]。如果您选择了一个单元格,则Value将为您提供当前选定单元格的值。private void dataGridView1\u CellValueChanged(对象发送者,DataGridViewCellEventArgs e){
if(dataGridView1.SelectedCells[0]。Value==“从文件浏览…”
{openFileDialog2.ShowDialog();}
我编写的这段代码没有发生任何变化。请尝试[0]。Value.ToString()==
在您告诉我之前,我尝试过这样做!哈哈。酷吧?在这两种情况下,它都会向我打印一条警告,指出可能是无意中的引用比较;要进行值比较,请将左侧的字符转换为键入“string”
string[] col2 = new string[dataGridView1.Rows.Count];
for (int i = 0; i < dataGridView1.Rows.Count; i++)
if (col2[i] == "Browse From File...")
{
DialogResult result2 = openFileDialog2.ShowDialog();
if (result2 == DialogResult.OK)
{
filename = openFileDialog1.FileName;
}
}