все, что я делаю в университете, и я пытаюсь найти решение определенной проблемы. У меня есть окно, которое генерирует случайное число при запуске, а также последовательность (при нажатии кнопки). Проблема заключается в том, что во время последовательности отображаются те же самые 5 номеров, пока отображается 5 разностных чисел. Они генерируются беспорядочно точно так же, как и одиночное число.Не отображать случайные числа
using System;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace RandomNumbers
{
public partial class frmRandomNumberGenerator : Form
{
private bool generate = true;
public frmRandomNumberGenerator()
{
InitializeComponent();
}
private string GenerateNumber(int min, int max)
{
return new Random().Next(min, max).ToString();
}
private void ToggleControls()
{
btnStart.Enabled = !generate;
tcRandomNumbers.Enabled = !generate;
txtRangeMin.Enabled = !generate;
txtRangeMax.Enabled = !generate;
btnStop.Enabled = generate;
}
private async void btnStart_Click(object sender, EventArgs e)
{
if(string.IsNullOrEmpty(txtRangeMin.Text) || string.IsNullOrEmpty(txtRangeMax.Text))
{
MessageBox.Show("Invalid range!");
return;
}
int min = 0;
int max = 0;
bool result = int.TryParse(txtRangeMin.Text, out min);
if (result) result = int.TryParse(txtRangeMax.Text, out max);
if (result) result = max > min;
if (!result)
{
MessageBox.Show("Invalid range!");
return;
}
generate = true;
ToggleControls();
while (true)
{
if (!generate) break;
if (tcRandomNumbers.SelectedIndex == 0)
{
lblSingleResult.Text = GenerateNumber(min, max);
}
else
{
lblSequenceFirst.Text = GenerateNumber(min, max);
lblSequenceSecond.Text = GenerateNumber(min, max);
lblSequenceThird.Text = GenerateNumber(min, max);
lblSequenceFourth.Text = GenerateNumber(min, max);
lblSequenceFifth.Text = GenerateNumber(min, max);
}
await Task.Delay(TimeSpan.FromSeconds(1));
}
}
private void btnStop_Click(object sender, EventArgs e)
{
generate = false;
ToggleControls();
}
}
}