【发布时间】:2011-04-15 21:34:46
【问题描述】:
出现错误:“设置的类型与标签的值表示不兼容。”
string fi = null;
public void reading(object sender, EventArgs e)
{
read_from_folder = folderBrowserDialog1.ShowDialog();
if (read_from_folder == DialogResult.OK)
{
files_in_folder = Directory.GetFiles(folderBrowserDialog1.SelectedPath);
foreach (string fi files_in_folder)
{
string fi_nam = filese_in_folder.ToString();
...
}
}
}
private void button1_Click(object sender, EventArgs e)
{
DicomDirectory cop = new DicomDirectory(fi);
cop.Load(fi);
}
【问题讨论】:
-
如果字符串“fi”在方法外部定义,则它不是局部变量。如果这些 to 方法在同一个类中并且“fi”是该类的成员,这应该可以工作。
-
不清楚fi的定义在哪里。也许你应该粘贴更多更清晰的代码:)
-
发布一些更清晰的代码和准确的错误消息(如果有的话)。乍一看,您有一个定义为
string fi;的类成员变量,但您也在foreach循环中使用string fi作为本地变量。该本地将隐藏成员变量,要求您在提供竞争变量名称的方法中将成员变量称为this.fi。 -
您能选择一个答案吗,或者如果您想出了自己的答案,您可以发布它并将其标记为答案吗?谢谢!