Класс для работы с базой данных (на примере MySQL) C#

Всё что ниже написано, больше как пример, лучше научитесь использовать Dapper.

В примере ниже, в отдельном классе реализованы не только методы выполняющие запросы типа (Scalar и NonQuery) но и метод возвращающий набор данных в DataTable. При этом продумана обработка исключительных ситуаций.

Привожу код как есть, он весь прокомментирован, на столько на сколько это необходимо для понимания.

Подробнее

Изменение размера изображения в C# для Win Mobile

Пример функции которая изменяет размер изображения на мобильной платформе Windows Mobile.

Пример:

//Изменение размеров изображения
        public static Image Resize(Image image, Size size)
        {
            Image bmp = new Bitmap(size.Width, size.Height);
            using (var g = Graphics.FromImage(bmp))
            {
                g.DrawImage(
                    image,
                    new Rectangle(0, 0, size.Width, size.Height),
                    new Rectangle(0, 0, image.Width, image.Height),
                    GraphicsUnit.Pixel);
            }
            return bmp;
        }


На входе функции надо передать исходное изображение и требуемые размеры (которые хотим получить на выходе). На выходе получим необходимое изображение.

P.S.
Для работы функции необходимо подключить:
using System.Drawing.Imaging;

Подробнее

Поворот изображения на 90 градусов в C#

    Здесь я приведу функцию поворота изображения на 90 градусов, но не отображения pictureBox под определённым углом, а именно трансформации изображения при котором на входе имеем одно изображение а на выходе абсолютно другое идентичное первому — но повёрнутое на 90 градусов.<br/>
    В функции используется тот же принцип что и в предыдущей публикации (изменяем область памяти где содержится картинка). За счёт этого скорость работы этой функции довольно высокая. 

Подробнее

Игра "Блок Шлёп" для HTC HD2 на Windows Mobile

Игра для коммуникаторов HTC с разрешением экрана 480x800. Создавалась специализированно для HTC HD2, тестировалась так-же на нём. Создана по причине невозможности найти аналог с приемлемым управлением пальцами (без стилуса).
    По своей сути эта игра похожа на игру в разноцветные шарики, которая была с Windows на предыдущих КПК и смартфонах в комплекте. Основное отличие заключается в том, что взамен исчезнувшей группы блоков (в оригинале шариков) сверху игровое пространство заполняется новыми разноцветными блоками. Также, отличается система подсчёта очков, итоговый счёт зависит не только от того сколько вы заработали очков, но и от того за какое время.

Подробнее

Примеры изменения документов Word из C#

    В последнее время, довольно часто приходится работать с документами Word из C#. Должен сказать что это неплохой механизм для формирования несложных отчётов. Получается довольно удобно — поскольку Word часто стоит на большинстве пользовательских компьютеров и отпадает необходимость установки на клиентский компьютер дополнительных компонент, вроде Crystal Report (они хоть и хороши, но когда надо что-то совсем простенькое то возможно лучше и без них).
    Дополнительно хочется сказать о том, что если по какой либо причине на клиентской машине отсутствуют необходимые компоненты программы Word, то это остаётся практически незаметным, поскольку при первом же обращении они сами устанавливаются (что меня очень приятно удивило, но это касаемо того способа обращения к документам Word — который описан ниже).

    Ниже приведены два примера работы с документом Word. Первый иллюстрирует замену текста в документе — удобно использовать при автозаполнении договоров и подстановки нужных значений. Второй иллюстрирует заполнение таблиц — удобно использовать при создании несложных отчётов.

Подробнее

Получение фотографии с камеры КПК C#

Недавно задумался над небольшой задачей — задействовать фотокамеру в своём приложении и получить с неё фотографии. Как оказалось, это довольно просто делается.
Для этого просто необходимо добавить в проект библиотеку Microsoft.WindowsMobile.Forms.
Библиотека находится в Windows Mobile SDK — скачать его можно на сайте Microsoft.

Итак, кусочек кода реализующий фотографирование:

CameraCaptureDialog cameraCaptureDialog = new CameraCaptureDialog();
  cameraCaptureDialog.Owner = this;
  cameraCaptureDialog.Title = "Фотография";
  cameraCaptureDialog.Mode = CameraCaptureMode.Still;
  if (cameraCaptureDialog.ShowDialog() == DialogResult.OK &&
  cameraCaptureDialog.FileName.Length > 0)
  {
     pictureBox1.Image = new Bitmap(cameraCaptureDialog.FileName);
  }
Подробнее

Работа с G - Sensor (акселерометром) на HTC C#

Недавно озадачился (в связи с приобретением девайса HTC HD2) а как же в нём, взять с акселерометра данные? И вот результат трудов, маленькая библиотека для доступа к G-Сенсору в HTC (теоретически должна подходить для всех HTC с акселерометром). Разумеется всё это с исходным кодом, используйте на ваше удовольствие в своих разработках.

Подробнее

Заполнение ComboBox из DataSet C#

Собственно в чём суть дела, нет ничего проще заполнения ComboBox-а из DataSet-а.
Делается это вот так:

SqlConnection connRC = new SqlConnection(MainParams.ConStr);
string command = "SELECT     Kod, Nam FROM Produkt ORDER BY Nam";
SqlDataAdapter da = new SqlDataAdapter(command, connRC);

DataSet ds = new DataSet();
connRC.Open();
da.Fill(ds);
connRC.Close();

comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = "Nam";
comboBox1.ValueMember = "Kod";


Но работает зараза при больших выборках — адски медленно!

Подробнее

DataTable , Фильтры и выбор количества записей.

Эта публикация из цикла о том, как делать не надо. А делать надо так: сначала читать MSDN затем творить, а не наоборот. И в результате проблема: «А чего это он мне 56 записей показывает? Ведь я фильтр наложил и должна быть ровно 1 запись!».

Так вот — если наложили фильтр на DataTable, то вот так вот делать нельзя:

DataTable table = new DataTable();
//Здесь - заполняем нашу таблицу чем нибудь...
table.DefaultView.RowFilter = "[поле_таблицы]=значение"; 
//Если значение символьное - то в одинарных ковычках.
int count = table.Rows.Count; 
//Узнаём сколько строк после фильтра неполучится - выдаст общее количество!
string value = table.Rows[0]["поле_таблицы"].ToString();
//Получаем значение ячейки из первой строки (тоже без фильтра сделает).
Подробнее

Чтение данных из таблиц Excel C#

Многие материалы которые я здесь описываю, я размещаю для самого себя, в основном чтобы мучительно долго не вспоминать как же оно делается и вновь пытать поисковики запросами.
На сей раз опишу простой пример доступа и выборки данных из таблиц Excel в C#. На днях пришлось сим заниматься и в очередной раз вспоминать как оно делается попроще, для больших задач с кучей разных наворотов информации в интернете много. А надо то оно, как обычно бывает, совсем простенько чтоб решало поставленную задачу.

Итак приступим:

Первым делом добавляем в наш проект (Add References...)
Microsoft.Office.Interop.Excel

Подробнее