C# Как отобразить этот массив в окне сообщений (консольное приложение)

Может ли кто-нибудь помочь мне использовать окно сообщения для отображения случайного числа и квадрата в двух столбцах с меткой для каждого?

    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]));

3 ответа

Я добился этого, добавив ссылку на System.Windows.Forms в мое консольное приложение, и получил желаемый результат. Вот мой код:

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();
            }
        }
    }
}  

Мой вывод:
ВыходКроме того, хотя это не запрашивается, но на всякий случай, чтобы добавить ссылку на System.Windows.Form, щелкните правой кнопкой мыши ссылки в обозревателе решений и выберите вкладку.Net, а затем нажмите кнопку ОК после выбора нужной библиотеки DLL. Ура!

Добавление ссылокВыбор желаемой ссылки

Начните свой проект в:

Windows Forms Application -> C#

Ты можешь использовать MessageBox чтобы помочь вам решить ваш дисплей.

Вы можете сделать это так.

MessageBox.Show(string.Format("{0,5:d} {1,5:d}\n", randint[row, 0], randint[row, 1]), "Message Box",
                                     MessageBoxButtons.YesNo,
                                     MessageBoxIcon.Question);

Если вы поместите эту строку внутри for цикл сообщение окно будет отображаться для каждой итерации. Если вы нажимаете Да каждый раз, будет отображаться новое окно сообщения со старыми и новыми значениями.

Если вы хотите отобразить весь массив, то это будет что-то вроде этого.

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);
Другие вопросы по тегам