Элементы управления
CheckBox
ListView
MessageBox
TexbBox
TreeView
Разное
CheckBox
Как запретить пользователю отмечать более двух флажков
Предположим, у вас имеется пять флажков, но вы хотите, чтобы пользователь мог отметить только два флажка в любой комбинации. Для этого нужно написать код для обработчика события CheckedChanged, который должен быть связан со всеми флажками. Когда пользователь ставит или убирает флажок, то обработчик события обновляет список выбранных флажков. Если CheckBox выбран, то мы добавляем его в список. Если число выбранных флажков превышает число дозволенных флажков, то программа снимает флажок у самого первого выбранного элемента. Если флажок снимается пользователем, то обработчик события удаляет его из списка.
// Число разрешенных выбранных флажков
private int NumAllowedOptions = 2;
// Список отмеченных флажков
private List<CheckBox> Selections = new List<CheckBox>();
// Проверяем, что число выбранных флажков не превышает разрешенное количество
private void chkOption_CheckedChanged(object sender, EventArgs e)
{
CheckBox chk = sender as CheckBox;
if (chk.Checked)
{
// Добавляем в список
Selections.Add(chk);
// Проверка на превышение
if (Selections.Count > NumAllowedOptions)
{
// Удаляем самый первый флажок из списка
Selections[0].Checked = false;
}
}
else
{
// Удаляем первое вхождение
Selections.Remove(chk);
}
}
Источник:
Настроить ширину столбцов у ListView
Вы можете автоматически подгонять ширину заголовка столбца ListView в режиме Details. Если вам необходимо установить ширину по самому длинному элементу в столбце, то установите значение свойства ColumnHeader.Width равным -1. Если нужно установить ширину заголовка по слову в самом заголовке, то используйте значение -2. Это справедливо и для .NET Compact Framework.
ColumnHeader header;
header.Width = -1;
Кнопка по умолчанию в MessageBox
Если в MessageBox вы выводите две или три кнопки, то не всегда требуется, чтобы кнопкой по умолчанию была первая кнопка, например, с надписью Да. Если вы хотите, чтобы фокус был на второй кнопке (напр. с надписью Нет), то используйте одну из перегруженных версий метода Show, в которой используется параметр MessageBoxDefaultButton, позволяющая задать кнопку по умолчанию.
MessageBox.Show("Ты согласен?",
"Вопрос",
MessageBoxButtons.YesNoCancel,
MessageBoxIcon.Question,
MessageBoxDefaultButton.Button2);
Как сделать TextBox, позволяющий вводить только цифры?
Существует много различных способов, позволяющих решить эту задачу. В книге C#. Советы программистам приводятся несколько подобных примеров. Вот еще один пример
Картинки для TreeView
Если вам приходилось раньше использовать элемент TreeView в своих проектах, то, наверняка, задавались вопросом - как использовать вместо плюсиков-минусов привычные картинки открытой или закрытой папки как в Проводнике или использовать свои собственные картинки. Для решения этой проблемы нужно было использовать системное сообщение Windows TVM_SETIMAGELIST. Готовый пример можно посмотреть например на странице FAQ от GotDotNet. Но, начиная с .NET Framework 2.0 у элемента TreeView есть свойства ImageIndex и SelectedImageIndex, которые в сочетании с элементом ImageList, помогут вам обеспечить необходимую функциональность. Пересмотрите свои старые примеры и внесите необходимые изменения.
Разное
Индикатор прогресса как у Firefox
Интересный пример создания индикатора прогресса на , наподобие того, как это сделано в Firefox. Настраиваются цвет и размер кружочков, а также скорость анимации. Скачать (с моего сайта)

Реклама
失恋や復縁の 悩み相談; компании чехии ; стартер СТ ; Интернет магазин связующие материалы .

