Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 关闭窗口时发生异常_C# - Fatal编程技术网

C# 关闭窗口时发生异常

C# 关闭窗口时发生异常,c#,C#,我一按按钮就打开了一个窗口。当我试图关闭该窗口时(单击十字标记),我得到一个异常 应用程序中出现未处理的异常 如果单击“继续”,应用程序将忽略此错误并尝试继续。如果单击“退出”,应用程序将立即关闭 字符串长度不能为零。参数名称:旧值 提前谢谢。 代码如下: Form2 f = new Form2(); f.cmbColumnCombo.DataSource = cmbList; f.ShowDialog(); for (int i = 0; i <= dataGridView1.Rows

我一按按钮就打开了一个窗口。当我试图关闭该窗口时(单击十字标记),我得到一个异常

应用程序中出现未处理的异常

如果单击“继续”,应用程序将忽略此错误并尝试继续。如果单击“退出”,应用程序将立即关闭

字符串长度不能为零。参数名称:旧值

提前谢谢。 代码如下:

Form2 f = new Form2();
f.cmbColumnCombo.DataSource = cmbList;
f.ShowDialog();

for (int i = 0; i <= dataGridView1.Rows.Count - 1; i++)
{
    if (dataGridView1.Rows[i].Cells[f.cmbColumnCombo.Text].Value.ToString().ToLower().Contains(f.txtfind.Text.ToLower()))
    {
        //dataGridView1.Rows[i].Cells[f.cmbColumnCombo.Text].Value = dataGridView1.Rows[i].Cells[f.cmbColumnCombo.Text].Value.ToString().ToLower().Replace(f.txtfind.Text.ToLower(), f.txtreplace.Text);
        //bulidDataRow(i);
        dataGridView1.Rows[i].Cells[f.cmbColumnCombo.Text].Value = dataGridView1.Rows[i].Cells[f.cmbColumnCombo.Text].Value.ToString().Replace(f.txtfind.Text, f.txtreplace.Text);
        bulidDataRow(i);
    }
}
form2f=newform2();
f、 cmbColumnCombo.DataSource=cmbList;
f、 ShowDialog();

对于(int i=0;i,似乎代码在替换(f.txtfind.Text,f.txtfreslace.Text)
时失败,因为
f.txtfind.Text
是空字符串

ArgumentException.oldValue是空字符串(“”)

在传递到
Replace
方法之前对其进行验证

例如:

if (!string.IsNullOrEmpty(f.txtfind.Text))
{
    dataGridView1.Rows[i].Cells[f.cmbColumnCombo.Text].Value = dataGridView1.Rows[i].Cells[f.cmbColumnCombo.Text].Value.ToString().Replace(f.txtfind.Text, f.txtreplace.Text);
}

请发布完整的堆栈跟踪。如果您调试应用程序,您应该能够轻松获得此跟踪。此外,请在您的帖子中格式化代码,以使其更易于阅读。