использование флажка как переключателя
я хочу использовать флажок
как переключатель ....
Syed Salman Raza Zaidi
Вы имеете в виду, что пользователь должен иметь возможность выбрать только один флажок за раз?
Вы имеете в виду, что пользователь должен иметь возможность выбрать только один флажок за раз?
Для Приложения C# Win
Используйте CheckedListBox и установите свойство SelectionMode как одно
Если вы имеете в виду дизайн то вот код
если у вас есть два флажка (Chk1,Chk2), то кодируйте следующим образом
на chk1 событие click
chk2.Checked=false;
chk1.Checked=false;
Это не очень хорошая практика :(
Я не буду голосовать против. Исправьте свой ответ.
Вы абсолютно правы. А Рдбурмон, который пытался возразить вам в комментарии ниже, - нет. Пожалуйста, смотрите мой комментарий.
--СА
Вы все еще говорите об этой бессмыслице. Я сказал, что это не связано с дизайном пользовательского интерфейса.
Но OP хочет использовать флажок в качестве кнопки опции, а функциональность кнопки опции должна быть выбрана только одна в группе, верно ? Вот почему я дал этот ответ, и я не думаю, что это плохая практика.Пожалуйста,перечитайте вопрос, а затем посмотрите на ответ лосмака . Если вы чувствуете, что были неправы, то, пожалуйста, проголосуйте за ответ с более высоким голосованием.
Это неправильный подход. На нелепый вопрос типа "Я хочу..." не следует отвечать подобным образом. Объяснять, как поступать неправильно, значит причинять вред, а не помогать. Вы просто следуете за ошибкой ОП и пытаетесь оправдать эту ошибку. Тот факт, что вы не видите, насколько это плохая практика, - это только ваша проблема. Вы "перечитываете вопрос" неуместно. Мы прекрасно поняли ваш вопрос; это вы не понимаете важности некоторых вещей в дизайне пользовательского интерфейса.
--СА
Почему мы говорим здесь о "дизайне пользовательского интерфейса"? вот почему я сказал, чтобы перечитали вопрос. Это не связано с пользовательским интерфейсом.
@RDBurmon, английский-не мой родной язык, поэтому я постараюсь изо всех сил объяснить, почему ваш ответ совсем не правильный. Как вы написали: "только один (флажок должен быть установлен) в группе" в то же время. Итак, поместите эти флажки в групповое поле, сгенерируйте события для обоих флажков, скопируйте и вставьте свой код. Вставьте точку останова в эти события, запустите приложение и убедитесь, что это не очень хороший ответ. Попробуйте тот же трюк с 10 флажками ;)
Используйте переключатель в качестве переключателя. Таким образом, вы могли бы избежать путаницы пользователей.
Еще один хороший момент. +5
Спасибо, Мацей.
--СА
Хорошее предложение. 5!
Спасибо, ви-джей.
--СА
Возьмите Списке checkedlistbox и позвонить ItemCheck Событие и использование ниже кода он будет вести себя как переключатели (это работает для меня):-
private void chkListBox_ItemCheck(object sender, ItemCheckEventArgs e) { if (e.NewValue == CheckState.Checked) { for (int item = 0; item < chkListBox.Items.Count; item++) { chkListBox.SetItemChecked(item, false); } } }