如何在标签中显示FileName

时间:2017-09-22 10:03:17

标签: c# winforms label savefiledialog

我正在尝试保存文件'浏览器。我希望用户输入的所选文件名显示在标签而不是文本框中。我为我的'打开文件'做了类似的事情。浏览器,它运作良好。请告诉我哪里出错了,谢谢!

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;
    }

1 个答案:

答案 0 :(得分:0)

底部的三行代码显示了单击label2时会发生什么。所以你为更新标签做的是正确的,这是:this.label2.Text = saveFileDialog1.FileName; 。问题是当你更新这个标签时,你用你的代码就可以在用户点击标签后更新标签文本。

最简单的方法是双击设计视图中的项目,它会自动转到程序运行时单击该项目时触发的代码。

例如,你在设计器视图中有一个按钮,如果在VS中的设计器视图中双击它,它将跳转到代码块,这是在单击按钮时将运行的代码块。