Казалось бы, все просто. Берем текущую дату, вычитаем из нее дату рождения, получаем собственно возраст. Но работа с датами в Net сделана крайне криво, приходится постоянно мастерить разнообразные костыли. Методы вычитания дат вроде Subtract возвращают не DateTime, а TimeSpan. Максимальная … Читать далее
Архив рубрики: C#
Имеем NumericUpDown, из которого по клике на кнопку берется значение и используется. Если мы просто вводим в него значения и меняем их - все в порядке. Но если мы удаляем значение и оставляем его пустым - компонент начинает вести себя … Читать далее
Сколько раз вы матерились про себя, начав набирать пароль на русском или русский текст на английском? Переключение раскладки в Windows не очень удобно и почти никто не пытается исправить это неудобство в своей программе. Хотя делается это очень просто. Не … Читать далее
Самый распространенный случай - знаменитые "песочные часы" при ожиданиия завершения какой-либо операции. Меняется курсор очень просто (предполагает код внутри винформы) - достаточно использовать класс Cursor: Список возможных курсоров можно посмотреть в свойствах класса Cursors … Читать далее
Имеем абсолютно стандартное диалоговое окно с кнопками подтверждения и отмены, вызываемое по какому-то действию, например клику по кнопке: Но нам надо не просто получить данные из диалогового окна по кнопке "Ок", а еще и проверить их прямо в диалоговом окне … Читать далее
Имеем сетку DataGridView связанную с некой DataTable через BindingSource. Один из столбцов DataGridView содержит chekbox'ы - в нем надо ставить галочки. При изменении значения в любой ячейке этого столбца, включая удаление и добавление строк, надо проделать некие вычисления по данным … Читать далее
Имеем сетку DataGridView соединенную с таблицей DataTable (может входить в DataSet) с помощью BindingSource. Чтобы удалить выбранную в датагриде строку надо использовать метод RemoveCurrent() класса BindingSource testBindingSource.RemoveCurrent(); Все строки удаляет метод Clear(). Может показаться, что его тоже надо вызывать на … Читать далее
Изучая чужой код для работы с Word столкнулся с очень забавной ошибкой в простейшем коде говорящей: The name 'Word' does not exist in the current context. Не сразу осознал, что все дело в том, как объявлено используемое пространство имен. Для … Читать далее