在第一个表单上,我有一个加载按钮,用于加载文件并调用第二个表单。在第二种形式中,我有一个 richTextBox,它必须向我显示打开文件中的文本,但它没有显示任何内容,这是我尝试过的(我公开了 richTextBox1 以访问它)
private void btnLoad_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
FormEditor f2 = new FormEditor();
f2.ShowDialog();
using (System.IO.StreamReader sr = new System.IO.StreamReader(ofd.FileName))
{
f2.richTextBox1.Text = sr.ReadToEnd();
}
}
}
如果我尝试将 richTextBox 置于第一种形式的相同代码,它会起作用。
最佳答案
当你打开f2
时(f2.ShowDialog()
),填充richtextbox的代码还没有执行,所以你在f2上得到一个空的textbox
(ShowDialog()
之后的代码,将在您关闭 f2
后立即执行)。尝试:
FormEditor f2 = new FormEditor();
using (System.IO.StreamReader sr = new System.IO.StreamReader(ofd.FileName))
{
f2.richTextBox1.Text = sr.ReadToEnd();
}
f2.ShowDialog();
关于c# - 在第二种形式的 richTextBox 中显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42434333/