Я пытаюсь заставить пользователя выбрать рабиобуттон, прежде чем ему разрешат двигаться дальше. Я сделал кнопку «Далее» невидимой, но у меня есть 10 радиообъектов, которые должны быть проверены, если какой-либо из них проверен. По определению можно проверить только 1 радиообъект. Мой код выглядит примерно так:Держите кнопку невидимой до тех пор, пока не будет нажата кнопка RadioButton. C#
b1.Text = "Next";
b1.Parent = fpn1;
fpn1.Controls.Add(b1);
b1.Dock = DockStyle.Bottom;
b1.BackColor = Color.LightGray;
b1.Visible = false;
RadioButton rb;
while (b1.Visible == false)
{
MessageBox.Show("LOOOL");
//Thread.Sleep(5000);
rb = fpn1.Controls.OfType<RadioButton>()
.FirstOrDefault(r => r.Checked);
if (rb != null)
{
b1.Visible = true;
}
}
Таким образом, хотя ни один из моих радиокнопок не будет нажата, b1 невидим. Проблема в том, что это происходит в бесконечном цикле. Пользователь больше не может выбрать любую кнопку, потому что страница не загружается. Любая идея обойти?
Что еще я могу сделать, чтобы получить желаемый результат?
Это отличный ответ: правильный, понятный и тщательный, оставаясь доступным для OP. Я бы поднял больше, если мог. – adv12
@ adv12: Спасибо! – David
Это RadioButtons, о которых мы говорим. Можно выбрать только одну кнопку. Это все. Когда один выбран, я хочу, чтобы видимость была правдой. Я не хочу использовать конструктора. Я хочу, чтобы это был весь мой код. – Mocktheduck