问题
Can anyone help me use a message box to display the random number and the square in two columns with a label for each?
const int NUM_ROWS = 10;
const int NUM_COLS = 2;
int[,] randint = new int [NUM_ROWS,NUM_COLS];
Random randNum = new Random();
for (int row = 0; row < randint.GetLength(0); row++)
{
randint[row,0] = randNum.Next(1,100);
randint[row,1] = randint[row,0]*randint[row,0];
Console.Write(string.Format("{0,5:d} {1,5:d}\n", randint[row,0], randint[row,1]));
回答1:
I have achieved it by adding reference of System.Windows.Forms to my console application and got the result you desired. Here is my code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
const int NUM_ROWS = 10;
const int NUM_COLS = 2;
int[,] randint = new int[NUM_ROWS, NUM_COLS];
Random randNum = new Random();
for (int row = 0; row < randint.GetLength(0); row++)
{
randint[row, 0] = randNum.Next(1, 100);
randint[row, 1] = randint[row, 0] * randint[row, 0];
Console.Write(string.Format("{0,5:d} {1,5:d}\n", randint[row, 0], randint[row, 1]));
MessageBox.Show(string.Format("{0,5:d} {1,5:d}\n", randint[row, 0], randint[row, 1]));
Console.ReadKey();
}
}
}
}
My output:



回答2:
Start you project in :
Windows Forms Application -> C#
You can use MessageBox
to help you solve your display content.
回答3:
You can do it like this.
MessageBox.Show(string.Format("{0,5:d} {1,5:d}\n", randint[row, 0], randint[row, 1]), "Message Box",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question);
If you place this line inside the for
loop a message box will be displayed for every iteration. If you click Yes each time, a new message box with the old and new values will be displayed.
If you want to display the entire array then it will be something like this.
string data = "";
for (int row = 0; row < randint.GetLength(0); row++)
{
randint[row, 0] = randNum.Next(1, 100);
randint[row, 1] = randint[row, 0] * randint[row, 0];
data += string.Format("{0,5:d} {1,5:d}\n", randint[row, 0], randint[row, 1]);
}
MessageBox.Show(data, "Data", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
来源:https://stackoverflow.com/questions/29313546/c-sharp-how-do-i-display-this-array-in-a-messagebox-console-application