0

私のプログラムには以下のコードがあります。メッセージボックスの1つがポップアップして、フィールドフォームの内容が表示されます。[OK]をクリックすると、別のポップアップが表示され、情報が正しいかどうかをユーザーに尋ねます。フォームの内容を表示し、情報が正しいかどうかを尋ねるメッセージボックスがポップアップ表示され、[はい/いいえ]ボタンが表示される2つを組み合わせたいと思います。私は2つを組み合わせて無駄にしようとしました。構文の概念が欠けていると思います。何か案は?

   //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);
4

4 に答える 4

3
 //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));
        MessageText.AppendLine();
        MessageText.AppendLine();

  //asks if info is correct, with a YES/NO button and question mark
  DialogResult result1 = MessageBox.Show(MessageText.ToString() + "Information is correct?",
        "Double Check Form Information",
        MessageBoxButtons.YesNoCancel,
        MessageBoxIcon.Question);

このようなもの?もちろん、この最後のテキストをStringBuilderに追加することもできます。

はい/いいえボタンのみが必要な場合は、に変更MessageBoxButtons.YesNoCancelMessageBoxButtons.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;
}

もちろん、ボタンを含めるかどうかに応じて、キャンセルオプションを追加/削除する必要があります。

于 2012-08-07T12:04:20.490 に答える
1

情報の後に質問したいと思います。その場合、最初のMessageBoxの場合と同様に、関連するMessageBox引数に渡す前にstringbuilderに質問を追加する必要があります。

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);
于 2012-08-07T12:05:19.323 に答える
1

ただ行う:

MessageBox.Show(MessageText.ToString(), MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);

2番目の引数(MessageBoxButtons.YesNoCancel)は、どのボタンを持つかを決定するものです(この場合、yes、no、cancel)

于 2012-08-07T12:06:05.623 に答える
1

文字列を単純に連結してみませんか?

    DialogResult result1 = MessageBox.Show(MessageText.ToString() + 
"\nInformation is correct?",
        "Double Check Form Information",
        MessageBoxButtons.YesNoCancel,
        MessageBoxIcon.Question);
于 2012-08-07T12:06:21.023 に答える