Заполнение 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";

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

Читаль далее...

C шарп ComboBox .NET

Устанавливаем .NET Core на Ubuntu Server 14.04 и запускаем сайт на ASP.NET Core

.NET Core

Сразу к делу.

Устанавливаем .NET Core на Ubuntu

Настраиваем доступ к репозиторию

sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
sudo apt-get update

Читаль далее...

C# NET Core Ubuntu ASP.NET установка

ASP.NET MVC проект на .NET Core в VS Code. Часть 1 (Создаем проект и Добавляем Контроллер)

.NET Core

В этой публикации я надеюсь начать цикл повествований по разработке ASP.NET MVC приложения на .NET Core без использования Visual Studio. Для разработки приложения я буду использовать VS Code (по сути навороченный текстовый редактор), и больше ничего.

Начну я с создания пустого проекта и последовательного добавления в проект Контроллера, Представления и Модели, с постепенным включением в проект необходимых библиотек.

Поскольку сам я это делаю впервые, то могу местами ошибаться или нести какую нибудь «чушь» :), поэтому заранее приношу извинения за возможно не «кошерный» код или некорректное описание чего либо. Обещать могу лишь одно, приведенные примеры гарантированно работоспособны.

Читаль далее...

NET Core MVC ASP.NET VS Code C# programming Cross Platform

Drag And Drop и Scroll в TreeView

Язык программирования C#

Не так давно пришлось делать DragAndDrop для TreeView и с удивлением обнаружил что на .NET не работает сама собой прокрутка (никак не работает, как выяснилось Microsoft признаёт что есть такая проблема, и предлагают её решать способом описанным ниже).

Итак сам способ.

Вопервых импортируем функцию из user32 — SendMessage
Для этого разумеется не забываем включить в проект (using System.Runtime.InteropServices;)

Читаль далее...

treeview C шарп .NET

Условная компиляция в C#

Язык программирования C#

Появилась недавно у меня задача компиляции программы под разные устройства. Ряд устройств в моём случае обладают специфическими возможностями и для них задействуются специальные библиотеки, а для некоторых обычных устройств — эти библиотеки надо исключать. Можно конечно комментировать каждый раз — но включений довольно много и такой подход весьма проблематичен.
Но есть очень хороший выход из этой ситуации, называется он условная компиляция.
Для условной компиляции используются директивы: #define, #if, #else, #endif.

Читаль далее...

C шарп .NET

ASP.NET MVC проект на .NET Core в VS Code. Часть 2 (Добавляем Представление)

.NET Core

В предыдущей публикации мы создали простейший ASP.NET MVC проект на .NET Core и добавили в него контроллер. Весь проект состоял из 4 файлов и содержал только самое необходимое. Теперь мы добавим в этот проект представления.
(Скачать исходник предыдущего проекта можно здесь: Sample001s.zip)

Приступим. Для начала добавим в наш проект каталог «View» (именно так принято именовать папку содержащую представления) в котором будут лежать все наши представления. Затем в каталоге «View» создадим подкаталог «SayHello» — в нем будут лежать представления для контроллера SayHello.

Читаль далее...

NET Core View Представление MVC ASP.NET C#

Получаем программно серийный номер на ТСД Cipher 9300

Разработка на .NET CF

Публикация в дополнение вот к этой: Программируем лазерный считыватель на терминалах сбора данных Cipher (9300).

У терминалов сбора данных Cipher с Windows CE — есть одна особенность, в отличие от всех других ТСД (во всяком случае Motorola(Symbol) и Datalogic) стандартными способами получить серийный номер не получится. Получить то он получится — но будет на всех устройствах одинаковый, что лично меня не устраивает.

Однако этот глюк можно обойти и получить серийный номер при помощи API с библиотекой SystemApi_Ce_Net.DLL которая поставляется на диске с терминалом.

Ниже маленький примерчик кода — как это сделать:

using Cipherlab.SystemAPI;


int err = 0;

DataType.DataStruct.SYSINFO sysinfo = new DataType.DataStruct.SYSINFO();
            
err = SystemAPI.Function.GetSysInfo(ref sysinfo);

string serial = Encoding.UTF8.GetString(sysinfo.SerialNum,0,sysinfo.SerialNum.Length);

Полагаю комментарии излишни, и так всё достаточно просто и понятно.

Комментировать...

CipherLab 9300 CE .NET CF программирование

Убираем панель задач на .NET CF 2.0 (делаем Full Screen)

Разработка на .NET CF

Недавно столкнулся с проблемой, что FormWindowState.Maximized не везде работает. Например у меня на одном из устройств с Windows CE 6.0 — отказалось работать, и ни какие танцы с бубнами не помогали. Долго копался в интернете, в русскоязычном ничего не нащёл, набрёл на руководство на одном англоязычном сайте.

Сделал у себя, заработало!

Итак, проблема решается тремя функциями из coredll.dll:

Читаль далее...

.NET CF TaskBar FullScreen программирование C шарп CE 6

Передача параметров приложению в C#

Язык программирования C#

   Собственно особых проблем с передачей параметров приложению при старте делается это в C# довольно просто, вот так:

static void Main( string[] args)
        {
            if (args.Length == 0)
            { MessageBox.Show("Нет параметров"); }
            else
            { MessageBox.Show("1"); }

            
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new FormMain());

        }

Проблема одна лишь в том, что в С# в рамках проекта может быть не один такой Main и чтобы было ясно какому из них должны быть переданы параметры, необходимо указать объект в: Project > Properties > Application > Startup Object.

Вот и всё!

Комментировать...

C шарп .NET

Проверяем заряд аккумулятора на мобильном устройстве в C#

Разработка на .NET CF

    В этой публикации я приведу пример получения информации о заряде аккумуляторов на мобильном устройстве под управлением Windows Mobile. Данный код написан очень давно. На днях вновь понадобился.
    Для получения информации о заряде используем coredll. Получаем значения двух батареек, во многих КПК (во всяком случае промышленных, на подобии этого) используются 2 аккумулятора, один основной, другой резервный, для сохранности данных. Информацию можно получить и с того и с другого, если он конечно имеется.

Ну да хватит болтовни, к делу. Пример:

Читаль далее...

.NET CF