Вот цикл, который у меня пока есть
foreach (CheckBox chk in gpbSchedule.Controls.OfType<CheckBox>())
{
if (chk.Checked)
{
//Code goes here
}
}
Все флажки имеют текстовые значения дней недели. Понедельник, вторник и т. Д.
Я хочу, чтобы конечный результат представлял собой одну строку, которая выглядит как «Понедельник, Вторник и Пятница» в зависимости от того, установлен ли флажок.
Цикл изменит бул, чтобы знать, установлен ли хотя бы один флажок. Это будет использоваться в операторе if после того, где будет отображаться произведенная строка, поэтому, если ни одна из них не отмечена, строка не будет отображаться. Я думаю, это означает, что не имеет значения, как выглядит строка, если это поможет.
Надеюсь, мне все ясно. Если вам нужно больше деталей, пожалуйста, спросите.
Заранее спасибо.
Текущий код:
string days = "*";
foreach (CheckBox chk in gpbSchedule.Controls.OfType<CheckBox>())
{
if (chk.Checked)
{
days += "#" + chk.Text;
}
}
days = days.Insert(days.LastIndexOf('#'), " and ");
days = days.Remove(days.LastIndexOf('#'), 1);
days = days.Replace("#", ", ");
days = days.Replace("* and ", "");
days = days.Replace("*, ", "");
Может кто-нибудь увидеть что-то не так с этим?