Событие разрыва линии - PullRequest
       5

Событие разрыва линии

3 голосов
/ 28 апреля 2011

Я работаю над проектом, связанным с вводом данных.

Таблица выглядит следующим образом: dateTime, enum, text, enum, val1, val2, text, enum;

Все значения, кроме val1 и val2, вводятся только один раз и добавляются в таблицу для каждой пары val1 val2.Val1 и val2 различны для каждой записи строки, оба являются штрих-кодами.

Я стремлюсь сделать его максимально эффективным, поэтому я хотел бы знать, есть ли способ сделать обновление DGV после ввода Val1 / 2 (остальные значения в настоящее время сохраненыкак переменные в object[]).Я использую стандартный сканер штрих-кода, поэтому я мог бы сделать так, чтобы он вводил значения в "перевод строки", в который сканер входит после сканирования штрих-кода, поэтому я в основном ищу событие "scanner_LineBreak" или что-то ...

Итак, я преодолел эту проблему ... сейчас .... Мне нужно записать все данные в текстовый файл / excel / xml / whichevertheheck из DGV ... плохая структура, я знаю ...может просто начать все сначала.В любом случае, я создал пустой набор данных, пустой набор данных и пустой набор данных (используя object[] заполнить строку, которая заполняет таблицу, которая заполняет набор), и теперь я пытаюсь ввести все данные в пустойdataTable, чтобы я мог добавить его в набор данных, чтобы я мог записать данные в XML.Излишне говорить, что это не работает.Я пытался использовать XmlSerializer, но он выдает ошибки при импорте в Access и / или IE.Итак, возвращаясь к квадрату 1 ... Есть ли способ заполнить DS из DGV или есть способ написать какой-либо документ, используя только данные DGV.примечание: DGV = DataGridView

ОБНОВЛЕНИЕ

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

int counter = 0;
private void textbox1_Textchanged(obj sender etc)
{
    counter++;

    if (counter % 10 == 0)
    {
        //shift focus to other textbox then do same to "save" values
    }
}

1 Ответ

1 голос
/ 28 апреля 2011

По моему опыту, большинство сканеров штрих-кода рассматриваются как ввод с клавиатуры.За цифрами последует управляющий символ (обычно это CRLF или табуляция, но вам нужно проверить с помощью сканера, чтобы увидеть, какой символ он использует).Затем вы можете использовать события KeyDown или TextChanged для просмотра ввода и, если это управляющий символ, выполнить логику обновления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...