Записи с меткой «Windows Forms»

Сохранение настроек приложения

Начиная с версии 2.0 .NET Framework позволяет очень легко создавать, сохранять и загружать настройеи приложения. Довольно часто возникает необходимость в сохранении фонового цвета программы, размеров окна, размеров шрифта чтобы при следующем запуске программы, она сама восстанавливала эти настройки.

Прочитать остальную часть записи »

Счетчик производительности процессора

Чтобы создать приложение, которое будет отслеживать загрузку процессора и количество доступной оперативной памяти требуется всего несколько минут. Разработчики .NET Framework действительно постарались и включили замечательный компонент производительности Windows NT – PerfomanceCounter (продребнее здесь).
Прочитать остальную часть записи »

Западающая кнопка

Многие даже не подозревают, как в принципе и я раньше не подозревал, что элемент CheckBox может выглядеть как западающая кнопка. Для того, чтобы CheckBox принял форму западающей кнопки, необходимо свойству Appearence установить значение Button (рис. 1)

 


Прочитать остальную часть записи »

Кнопка произвольной формы

С помощью свойства Region можно сделать кнопку любой формы. У нас нет необходимости создавать элементы управления, мы можем испольовать уже готовые. Давайте создадим метод, который будет делать кнопку овальной формы.
Поместим на нашу форму обычную кнопку (рис. 1)


Прочитать остальную часть записи »

Избавление от звукового сигнала при нажатии на клавишу Enter

Когда вы нажимаете на клавишу Enter в то время, когда курсор находится в текстовом поле, то издается неприятный звук из динамиков. Чтобы избавится от него необходимо перехватить событие нажатия клавиш:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
   if(e.KeyChar == (char)Keys.Enter)
      e.Handled = true;
   else
      base.OnKeyPressed(e);
}

В листинге выше показан пример для отдельного текстового поля. Если вы хотите применить этот способ ко многим текстовым полям, то проще определить новый класс с наследованием от TextBox и переопределить событие OnKeyPress:

public class TextBoxEx : TextBox
{
   private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
   {
      if(e.KeyChar == (char)Keys.Enter)
         e.Handled = true;
      else
      base.OnKeyPressed(e);
   }
}

Добавление всплывающих подсказок к CheckedListBox

Однажды, в процессе работы у меня возника ситуация, когда необходимо было для позиций CheckedListBox-а выводить всплывающую подсказку. Разработчики контрола не предусмотрели эту возможность и мне пришлось решать проблему самому.

Для начала создадим новое Windows Forms Application. Поместим на форму CheckedListBox.

Прочитать остальную часть записи »