コード例 #1
0
        // События на форме -----------------------------------------------------------------------------------------------------------------------------------
        public virtual void ОкноВыбораЗаказовКлиента_Load(object sender, EventArgs e)
        {
            ОтветСервера = Обмен.ПослатьСтроку("ПолучениеЗаданий");

            if (ОтветСервера == null)
            {
                this.Close(); return;
            }                                                   // в случае ошибки закрываем окно подбора

            if (ОтветСервера[0][0] == "ЗаданияЗаписаны")
            {
                Form Окно = new ОкноЗаказовКлиента();
                this.Close();
                Окно.ShowDialog();
                return;
            }

            if (ОтветСервера[0][0] == "ЗаданияВПодборе")
            {
                Form Окно = new ОкноПодбораЗаказовКлиента();
                this.Close();
                Окно.ShowDialog();
                return;
            }

            // Заполнение таблицы
            ТаблицаДокументов.Items.Clear();
            foreach (var Строка in ОтветСервера)
            {
                ListViewItem НоваяСтрока = new ListViewItem();
                НоваяСтрока.Text = Строка[0];
                НоваяСтрока.SubItems.Add(Строка[1]);
                НоваяСтрока.SubItems.Add(Строка[2]);
                НоваяСтрока.SubItems.Add(Строка[3]);

                ТаблицаДокументов.Items.Add(НоваяСтрока);
            }

            // Блокируем все строки, кроме первой
            var СерыйЦвет       = Color.FromArgb(220, 220, 220);
            int КоличествоСтрок = ТаблицаДокументов.Items.Count;

            for (int i = 1; i < КоличествоСтрок; i++)
            {
                ТаблицаДокументов.Items[i].BackColor = СерыйЦвет;
            }

            // Пытаемся выбрать первую строку
            try
            {
                var ВыбраннаяСтрока = ТаблицаДокументов.Items[0];
                if (ВыбраннаяСтрока == null)
                {
                    return;
                }
                ВыбраннаяСтрока.Selected = true;
                ВыбраннаяСтрока.Focused  = true;
            }
            catch (Exception) { }
        }
コード例 #2
0
        public virtual void _Далее()
        {
            var ВыбраннаяСтрока = ТаблицаДокументов.FocusedItem;

            if (ВыбраннаяСтрока == null)
            {
                Инфо.Ошибка("Не выбрано ни одной строки"); return;
            }

            // Запрет на выбор документов, кроме первого
            if (ВыбраннаяСтрока.Index != 0)
            {
                Инфо.Ошибка("Разрешен выбор только первого документа в очереди!");
                return;
            }

            string Н_Гуид = ВыбраннаяСтрока.SubItems[3].Text;

            ОтветСервера = Обмен.ПослатьСтроку(Н_Гуид);

            if (ОтветСервера == null)
            {
                return;                       // в случае ошибки остаться в этом же окне
            }
            if (ОтветСервера[0][0] == "ЗаданияЗаписаны")
            {
                Form Окно = new ОкноЗаказовКлиента();
                this.Close();
                Окно.ShowDialog();
                return;
            }

            if (ОтветСервера[0][0] == "ЗаданиеВзято")
            {
                Инфо.Ошибка("Задания по выбранному документу уже взяты!");
                ОкноВыбораЗаказовКлиента_Load(null, new EventArgs());
                return;
            }
        }