Как раскрасить строки (изменить цвет текста) в ComboBox (C# и WinForms)

Имеется комбо-бокс, связанный с источником данных. Задача: раскрасить строки в разные цвета по какому-то критерию, связанному с источником данных. Чтобы решить эту задачу придется изменить отрисовку на экране строк комбо-бокса повесившись на событие DrawItem. По умолчанию это событие не происходит, … Читать далее

Совершенный код. 02. Классы.

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

LinQ, значение по умолчанию в выборке

Задача: в LinQ запросе вернуть единственное значение или значение по умолчанию если запрос не вернет ни одного элемента. В принципе есть стандартные методы. SingleOrDefault возвращает значение по умолчанию и выбрасывает исключение если запрос вернул несколько элементов, FirstOrDefault не выбрасывает исключения, … Читать далее

C#, Interop.Word - ошибка "Отсутствует доступ к отдельным строкам, поскольку таблица имеет ячейки, объединенные по вертикали."

Или в английском варианте Cannot access individual rows in this collection because the table has vertically merged cells. Как несложно догадаться ошибка возникает при попытке объединения ячеек в таблице документа Word по вертикали, в колонках, точнее говоря при попытке обратиться … Читать далее

Как изменить ориентацию страницы в MS Word из C# (interop)

Чтобы просто изменить ориентацию, достаточно использовать свойство диапазона-range PageSetup.Orientation принимающее значения WdOrientation Но если мы хотим изменить ориентацию не всего документа, а конкретных страниц, то перед страницей с измененной ориентацией надо вставить разрыв секции используя метод Range.InsertBreak с параметром из … Читать далее

Красивая строка даты из datetime в MS SQL Server 2005 и младше

Начиная с MS SQL Server 2008 появляется специальный тип данных для дат. В более ранних версиях можно использовать функцию convert с кучей разнообразных кодов. Памятка для красивой строки даты виды 01.01.2012 CAST and CONVERT (Transact-SQL) … Читать далее

Работаем с MS Word из C#, часть 4. Обьединяем несколько файлов в один, считаем количество страниц

Задача: сделать большой документ Word, состоящий из множества более мелких, заполняемых по шаблону (чтобы пользователю было удобно смотреть/печатать). Каждый поддокумент должен начинаться с новой страницы, длина каждого документа (даже в страницах) заранее не известна, но ее нужно считать и выводит. … Читать далее

Работаем с MS Word из C#, часть 3. Работа с таблицами

Выбрать уже существующую таблицу внутри документа можно по ее порядковому номеру (начиная с 1 и начала документа) можно через интерфейс Tables. При этом мы получим объект типа Table Новая вставляется методом Tables.Add (предполагается что мы уже получили диапазон _currentRange того … Читать далее

Работаем с MS Word из C#, часть 2. Вставляем текст на закладку и форматируем

Продолжение былинной саги про Office.Interop.Word. Самый простой способ вставить кусок текста в нужную часть Word-шаблона - использовать закладки. В отличие от текстовых меток закладки не надо искать, они невидимы и всегда имеют уникальное имя. Имея открытый в предыдущей части документ … Читать далее