我正在尝试保存文件'浏览器。我希望用户输入的所选文件名显示在标签而不是文本框中。我为我的'打开文件'做了类似的事情。浏览器,它运作良好。请告诉我哪里出错了,谢谢!
private void button5_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Title = "Save File";
saveFileDialog1.Filter = "Text files (*.txt)|*.txt| CONF(*.conf)|*.conf|All files (*.*)|*.*";
saveFileDialog1.FilterIndex = 1;
saveFileDialog1.ShowDialog();
if (saveFileDialog1.FileName != "")
{
System.IO.FileStream fs = (System.IO.FileStream)saveFileDialog1.OpenFile();
switch (saveFileDialog1.FilterIndex)
{
case 1:
saveFileDialog1.FileName = saveFileDialog1.FileName + ".txt";
break;
case 2:
saveFileDialog1.FileName = saveFileDialog1.FileName + ".conf";
break;
}
fs.Close();
}
}
private void label2_Click(object sender, EventArgs e)
{
this.label2.Text = saveFileDialog1.FileName;
}
答案 0 :(得分:0)
底部的三行代码显示了单击label2时会发生什么。所以你为更新标签做的是正确的,这是:this.label2.Text = saveFileDialog1.FileName; 。问题是当你更新这个标签时,你用你的代码就可以在用户点击标签后更新标签文本。
最简单的方法是双击设计视图中的项目,它会自动转到程序运行时单击该项目时触发的代码。
例如,你在设计器视图中有一个按钮,如果在VS中的设计器视图中双击它,它将跳转到代码块,这是在单击按钮时将运行的代码块。