C# 为什么我的列表框没有填充?

C# 为什么我的列表框没有填充?,c#,listbox,add,using,streamreader,C#,Listbox,Add,Using,Streamreader,我有这个代码,但它不工作。我试过几种不同的版本,但都不管用。我是个菜鸟,还不懂所有的事 OpenFileDialog filedialog = new OpenFileDialog(); private void button3_Click(object sender, EventArgs e) { filedialog.ShowDialog(); filedialog.FileOk += filedialog_FileOk;

我有这个代码,但它不工作。我试过几种不同的版本,但都不管用。我是个菜鸟,还不懂所有的事

    OpenFileDialog filedialog = new OpenFileDialog();

    private void button3_Click(object sender, EventArgs e)
    {

        filedialog.ShowDialog();
        filedialog.FileOk += filedialog_FileOk;
    }

    void filedialog_FileOk(object sender, System.ComponentModel.CancelEventArgs e)
    {
        using (StreamReader myStream = new StreamReader(filedialog.FileName))
        {
            string line;
            // Read and display lines from the file until the end of  
            // the file is reached. 
            while ((line = myStream.ReadLine()) != null)
            {
                listBox1.Items.Add(line);
            }
        }
    }

我认为在这个编辑器中需要太多的纯文本。

在调用ShowDialog返回后,您正在添加事件处理程序。将其移动到before,它可能会起作用。

在对ShowDialog的调用返回后,您正在添加事件处理程序。将其移动到“之前”,它可能会工作。

根据,单击“打开”或“保存”按钮时会发生FileOK事件。 您正在将事件处理程序附加到click中。 您可能希望在页面加载时或在单击发生之前的某个位置执行此操作

例如:

根据,单击“打开”或“保存”按钮时会发生FileOK事件。 您正在将事件处理程序附加到click中。 您可能希望在页面加载时或在单击发生之前的某个位置执行此操作

例如:

OpenFileDialog filedialog = new OpenFileDialog();
protected void Page_Load(object sender, EventArgs e)
{
    filedialog.FileOk += filedialog_FileOk;
}
private void button3_Click(object sender, EventArgs e)
{
    filedialog.ShowDialog();        
}
void filedialog_FileOk(object sender, System.ComponentModel.CancelEventArgs e)
{
    using (StreamReader myStream = new StreamReader(filedialog.FileName))
    {
        string line;
        // Read and display lines from the file until the end of  
        // the file is reached. 
        while ((line = myStream.ReadLine()) != null)
        {
            listBox1.Items.Add(line);
        }
    }
}