在按钮单击之间传递文件目录

Pass File Directory between button click

如何在两个按钮点击方法之间传递文件目录?

  1. 我正在选择 csv 文件并将 CSV 名称放入文本框

    private void Button_Click(object sender, RoutedEventArgs e)
    {
      OpenFileDialog ofd = new OpenFileDialog();
      ofd.Filter = "CSV|*.csv";
      ofd.ShowDialog();
    
      csvName.Text = ofd.SafeFileName;           
    }
    
  2. 第二个按钮应该开始读取第一步选择的 CSV 文件

    private void Button_Click_1(object sender, RoutedEventArgs e)
    {
        //string path = ;
        StreamReader srd = new StreamReader();
    }
    

您可以在button2_click活动中阅读csvName的文本。

字符串路径=csvName.Text;

或者您可以使用变量来保存文本框的值并使用它。

csvName.Text = ofd.SafeFileName; SafeFileName 没有 return 完整路径,它只是 return 文件名,这不足以让按钮 (Button_Click_1) 开始阅读。 而是使用 ofd.FileName;这给出了完整的路径。 假设 csvName 为 TextBox。

声明全局变量

public string FullFileName{get;set;}

private void Button_Click(object sender, RoutedEventArgs e)
{
 OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "CSV|*.csv";
ofd.ShowDialog();
csvName.Text = ofd.SafeFileName;           

全文件名=ofd.FileName; }

private void Button_Click_1(object sender, RoutedEventArgs e)
{
using(var reader = new StreamReader(FullFileName))
{
// do your action here
}
}