将两个C#消息框的内容合并为一个
我的程序中有如下代码。弹出其中一个消息框以显示字段表单的内容。点击OK后,会弹出另一个对话框,询问用户信息是否正确。我想将两者结合起来,在这里会弹出一个消息框,显示表单内容,询问信息是否正确,并伴有一个是/否按钮。我试着把两者结合起来,但没有用。我相信我遗漏了一个句法概念。有什么想法吗将两个C#消息框的内容合并为一个,c#,messagebox,C#,Messagebox,我的程序中有如下代码。弹出其中一个消息框以显示字段表单的内容。点击OK后,会弹出另一个对话框,询问用户信息是否正确。我想将两者结合起来,在这里会弹出一个消息框,显示表单内容,询问信息是否正确,并伴有一个是/否按钮。我试着把两者结合起来,但没有用。我相信我遗漏了一个句法概念。有什么想法吗 //shows contents of form fields StringBuilder MessageText = new StringBuilder(); MessageText.
//shows contents of form fields
StringBuilder MessageText = new StringBuilder();
MessageText.AppendLine(string.Format("Coil#: {0}", coil_Num.Text));
MessageText.AppendLine(string.Format("Location: {0}", location_box.Text));
MessageText.AppendLine(string.Format("Sub-Area: {0}", sub_area_box.Text));
MessageText.AppendLine(string.Format("Row: {0}", row_Num.Text));
MessageBox.Show(MessageText.ToString());
//asks if info is correct, with a YES/NO button and question mark
DialogResult result1 = MessageBox.Show("Information is correct?",
"Double Check Form Information",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
像这样的?当然,最后一个文本也可以附加到StringBuilder中
如果只需要是/否按钮,请将MessageBoxButtons.YesNoCancel
更改为MessageBoxButtons.YesNo
最后检查如下结果:
switch (result1)
{
case DialogResult.Yes:
// ... Do stuff if Yes is choosen
break;
case DialogResult.No:
// ... Do stuff if No is choosen
break;
case DialogResult.Cancel:
// ... Do stuff if Cancel is choosen
break;
}
当然,您必须添加/删除“取消”选项,具体取决于是否包含该按钮
像这样的?当然,最后一个文本也可以附加到StringBuilder中
如果只需要是/否按钮,请将MessageBoxButtons.YesNoCancel
更改为MessageBoxButtons.YesNo
最后检查如下结果:
switch (result1)
{
case DialogResult.Yes:
// ... Do stuff if Yes is choosen
break;
case DialogResult.No:
// ... Do stuff if No is choosen
break;
case DialogResult.Cancel:
// ... Do stuff if Cancel is choosen
break;
}
当然,您必须根据是否包含按钮来添加/删除取消选项。我假设您想在信息之后提问,在这种情况下,您需要在传递到相关MessageBox参数之前将问题附加到stringbuilder,就像在第一个MessageBox中一样:
StringBuilder MessageText = new StringBuilder();
MessageText.AppendLine(string.Format("Coil#: {0}", coil_Num.Text));
MessageText.AppendLine(string.Format("Location: {0}", location_box.Text));
MessageText.AppendLine(string.Format("Sub-Area: {0}", sub_area_box.Text));
MessageText.AppendLine(string.Format("Row: {0}", row_Num.Text));
MessageText.AppendLine("Is this information correct?");
DialogResult result1 = MessageBox.Show(MessageText.ToString(),
"Double Check Form Information",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
我假设您想在信息之后提问,在这种情况下,您需要在传递到相关MessageBox arg之前将问题附加到stringbuilder,就像您在第一个MessageBox中一样:
StringBuilder MessageText = new StringBuilder();
MessageText.AppendLine(string.Format("Coil#: {0}", coil_Num.Text));
MessageText.AppendLine(string.Format("Location: {0}", location_box.Text));
MessageText.AppendLine(string.Format("Sub-Area: {0}", sub_area_box.Text));
MessageText.AppendLine(string.Format("Row: {0}", row_Num.Text));
MessageText.AppendLine("Is this information correct?");
DialogResult result1 = MessageBox.Show(MessageText.ToString(),
"Double Check Form Information",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
只要做:
MessageBox.Show(MessageText.ToString(), MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
第二个参数(MessageBoxButtons.YesNoCancel)决定了它将有哪些按钮(在本例中为yes、no和cancel)只需执行以下操作:
MessageBox.Show(MessageText.ToString(), MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
第二个参数(MessageBoxButtons.YesNoCancel)决定了它将拥有哪些按钮(在本例中为yes、no和cancel)为什么不简单地连接字符串呢
DialogResult result1 = MessageBox.Show(MessageText.ToString() +
"\nInformation is correct?",
"Double Check Form Information",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
为什么不简单地将字符串连接起来呢
DialogResult result1 = MessageBox.Show(MessageText.ToString() +
"\nInformation is correct?",
"Double Check Form Information",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question);
是的,这正是我需要的。我没有想到要添加两个appendline()。非常感谢你!检查我的编辑:)您还可以使用
StringBuilder.AppendFormat()
在一行中执行AppendLine
和string.Format()
,这正是我需要的。我没有想到要添加两个appendline()。非常感谢你!检查我的编辑:)您还可以使用StringBuilder.AppendFormat()