我正在做一个记事本程序,我有一个问题;在我New
按钮,我有这样的代码:如何在显示消息框后更改表单的文本?
private void New()
{
if (us == true)
{
DialogResult dr = MessageBox.Show("Do you want to save changes to: " + filepath, "Save Changes", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);
if (dr == DialogResult.Yes)
Save();
else if (dr == DialogResult.No)
{
filename = null;
undoToolStripMenuItem.Enabled = false;
undoToolStripMenuItem1.Enabled = false;
redoToolStripMenuItem.Enabled = false;
redoToolStripMenuItem1.Enabled = false;
us = false;
Form1.ActiveForm.Text = "Untitled - PadNotePro";
richTextBox1.Clear();
}
else if (dr == DialogResult.Cancel)
Close();
}
else
{
filename = null;
undoToolStripMenuItem.Enabled = false;
undoToolStripMenuItem1.Enabled = false;
redoToolStripMenuItem.Enabled = false;
redoToolStripMenuItem1.Enabled = false;
Form1.ActiveForm.Text = "Untitled - PadNotePro";
richTextBox1.Clear();
}
}
us
指未保存的,那就是看它是否被保存,如果我们= true时,它不会被保存。
当我点击没有我DialogBox
,运行这段代码:
else if (dr == DialogResult.No)
{
filename = null;
undoToolStripMenuItem.Enabled = false;
undoToolStripMenuItem1.Enabled = false;
redoToolStripMenuItem.Enabled = false;
redoToolStripMenuItem1.Enabled = false;
us = false;
Form1.ActiveForm.Text = "Untitled - PadNotePro";
richTextBox1.Clear();
}
我有一个问题,用什么,就是:Form1.ActiveForm.Text = "Untitled - PadNotePro";
,好像它是跳过一行代码。我认为这与MessageBox
有关,但无法弄清楚。有谁知道为什么?
编辑: 我认为这可能与Form
当时没有被激活有关。
'“它不会运行那行代码”'那是什么意思? – Jonesopolis
我好像跳过了那行代码,它不会改变'Form'的文本 – Dozer789
@ Dozer789在你的代码中有这样的两行,所以你能指出确切的一行吗? –