Событие ListBox после сканирования штрих-кода -- c# поле с участием winforms пол Связанный проблема

Listbox event after barcode scanning


0
vote

проблема

русский

Я использую ListBox в окне приложение, мой список имеет некоторое количество штрих-кодов.

Я хочу отсканировать их с помощью Reader barcode, а затем хочу переместить их в другом списке, но я не могу найти какое-либо событие listbox, которое автоматически запускается и перемещает штрих-коды в другой список.

Английский оригинал

I am using listbox in window application, my listbox have some number of barcodes.

I want to scan them by barcode reader and then want to move them in another listbox, but I am not able to find any event of listbox which automatically fires and move barcodes to another listbox.

</div
     
     
     

Список ответов

2
 
vote
vote
Лучший ответ
 

Это работает с моим сканером, если список фокусировки имеет фокус:

 <код> string scannerInput = "";  private void listBox1_KeyPress(object sender, KeyPressEventArgs e) {     if ((int)e.KeyChar == 13)     {         listBox1.Items.Add(scannerInput );         scannerInput = "";     }     else scannerInput += e.KeyChar.ToString(); }   
 

This works with my scanner if the ListBox has focus:

string scannerInput = "";  private void listBox1_KeyPress(object sender, KeyPressEventArgs e) {     if ((int)e.KeyChar == 13)     {         listBox1.Items.Add(scannerInput );         scannerInput = "";     }     else scannerInput += e.KeyChar.ToString(); } 
</div
 
 
         
         
1
 
vote

Большинство сканеров штрих-кода добавляет «перевозчик возврата», то есть. Введите после прочтения штрих-кода.

Как имитация нажатия клавиши введите клавишу

Вы можете попробовать использовать этот Enter на событии KeyPress / Keydown в управлении формами или списком (если список фокусировки находится)

 

Most Barcode scanners adds a "carrier return", I.e. Enter after reading the barcode.

Like simulating a press of the Enter key.

You could try and catch this Enter on the keypress/keydown event on the form or listbox control (If the listbox is in focus)

</div
 
 
     
     
0
 
vote

Наличие единого ручка управления, сканирование штрих-кода с клина клавиатуры проблематично. Требуется, чтобы пользователь настроить фокус на контроль перед сканированием просит проблемы. Попробуйте иметь форму обрабатывать сканирование, реализуя событие «PreviewTextInput».

Большинство клиновых сканеров на клавиатуре могут быть запрограммированы, чтобы отправить преамбулу и постмашенные коды. Они должны быть непечатанными символами ASCII. Я использовал CHAR (2) и CHAR (3). Они STX - начало текста и ETX - конец текста соответственно.

 <код> bool InteceptBarcode = false; string barcodeValue = string.empty; private void Window_PreviewTextInput(object sender, TextCompositionEventArgs e) {     if(InteceptBarcode)     {         barcodeValue = += e.Text         e.Handled = true; //The keyboard character will stop bubbling up the control tree      }     else if (e.Text == (char)2  //Start of text character     {         InterceptBarcode = true;         barcodeValue = string.empty;         e.Handled = true;     }     else if (e.Text == {char)3) //End of text character     {             InterceptBarcode = false         e.Handled = true;         //Now do what ever you need to do on the UI.     }     else     {         e.Handled = false;     }                    }   
 

Having a single control handle a barcode scan from a keyboard wedge is problematic. Requiring a user to set focus to a control before scanning is asking for trouble. Try having the form handle the scanning by implementing the "PreviewTextInput" event.

Most Keyboard wedge scanners can be programmed to send a preamble and post amble codes. These should be unprintable ASCII characters. I’ve used Char(2) and Char(3). They are STX – Start of text and ETX – End of text respectively.

bool InteceptBarcode = false; string barcodeValue = string.empty; private void Window_PreviewTextInput(object sender, TextCompositionEventArgs e) {     if(InteceptBarcode)     {         barcodeValue = += e.Text         e.Handled = true; //The keyboard character will stop bubbling up the control tree      }     else if (e.Text == (char)2  //Start of text character     {         InterceptBarcode = true;         barcodeValue = string.empty;         e.Handled = true;     }     else if (e.Text == {char)3) //End of text character     {             InterceptBarcode = false         e.Handled = true;         //Now do what ever you need to do on the UI.     }     else     {         e.Handled = false;     }                    } 
</div
 
 

Связанный проблема

5  Лучшие практики для сканирования всех классов и методов для пользовательского атрибута  ( Best practices to scan all classes and methods for custom attribute ) 
Впервые я действительно должен был сделать сканирование сборки вручную. Я столкнулся с C # - Как перечислять все классы с атрибутом пользовательского класса?...

1  Включить первый случай исключений для определенного куска кода  ( Enable first chance exceptions for specific piece of code ) 
Мне нужна Visual Studio, чтобы бросить первые шансы исключения только для определенного класса. Если я включаю первый случай исключения в Visual Studio, он ...

0  Как бы я пошел на рисование в программе краски с чувствительностью давления?  ( How would i go about drawing in a paint program with pressure sensitivity ) 
Я пишу программу краски в родах, используя C # .NET / WinForms и чувствительность к давлению является обязательным. У меня все настроено и получаю информацию ...

0  Очистите DataTable в петле Перемещение используемых элементов к двум другим источникам данных [дубликат]  ( Clean a datatable in a loop moving used items to two other datatables ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> Этот вопрос уже имеет ответ здесь : ...

2  C #, Linq2SQL - трюки для получения объекта ViewModel с данными соотношения?  ( C linq2sql tricks to fetch a viewmodel object with relation data ) 
Я не знаю linq2sql так хорошо, и мне было интересно, есть ли трюк для этого, вероятно, общий сценарий MVVM. У меня есть контекст данных Linq2SQL, содержащий м...

0  Ошибка структуры объекта: ошибка загрузки указанного ресурса метаданных  ( Entity framework error error loading specified metadata resource ) 
Я знаю, что это известная проблема, но решение для моего случая не в других вопросах, я думаю. У меня есть проект в C #. В этом проекте у меня есть мой EDMX...

1  Как довольно печатать метод итератора  ( How to pretty print the iterator method ) 
Я хочу получить имя метода со своими аргументами метода итератора и я борюсь, чтобы найти простое решение. Итераторы генерируются компилятором в результате. И...

3  Представление строки в C #  ( String representation in c sharp ) 
IM TRING, чтобы взять на себя текст из существующей веб-страницы, используя этот метод: <код> try { WebClient client = new WebClient(...

1  Разница между несколькими наследованиями и интерфейсами в C #  ( Difference between multiple inheritance and interfaces in c sharp ) 
делает C # действительно поддерживать многократное наследование. Люди говорят, что он поддерживает многократное наследование в виде интерфейсов? Но я не думаю...

1  Mongodb C # LINQ сгерированный запрос  ( Mongodb c sharp linq generated query ) 
Как я могу получить сгенерированный запрос из запроса LINQ? Я попробовал это, но это не работало: <код> var query = ( from d in mcollection.AsQu...

2  Высевание многих для многих кода EF первые отношения  ( Seeding many to many ef code first relationship ) 
Есть несколько других сообщений по этой теме, которую я видел, но я не смог получить правильный ответ еще (моя собственная вина, я уверен), но я хочу сеять ба...

4  Создайте VCARD, который можно скачать на Android с помощью ASP.NET  ( Generate vcard that can be downloaded on android using asp net ) 
Я пробую довольно некоторое время, чтобы сгенерировать VCARD, используя ASP.NET (C #), которые можно загрузить на устройство Android. Процесс генерации карт...

5  Сделать структуру сущности быть нечувствительными к регистру  ( Make entity framework be case insensitive ) 
Возможно ли установить корпус строки структуры объекта нечувствителен по умолчанию? Если я использую <код> string.StartsWith("stringToCompare", StringComp...

2  Обработка ошибок в свойствах, я знаю, что это плохо, нужно исправить, хотя  ( Error handling in properties i know its bad need fix though ) 
Я знаю свою плохую практику, чтобы поставить обработку ошибок в свойствах, я просто хочу знать , где я должен положить ошибку обработки ошибок. Я знаю, что з...

-2  Гольф HCP Calculator  ( Golf hcp calculator ) 
Я работаю над программой в ASP.NET MVC, где моя цель - сделать показатель для гольфа. в Golf у каждого игрока есть гандикап, который дает им ряд дополнитель...

Связанный проблема

5  Лучшие практики для сканирования всех классов и методов для пользовательского атрибута 
1  Включить первый случай исключений для определенного куска кода 
0  Как бы я пошел на рисование в программе краски с чувствительностью давления? 
0  Очистите DataTable в петле Перемещение используемых элементов к двум другим источникам данных [дубликат] 
2  C #, Linq2SQL - трюки для получения объекта ViewModel с данными соотношения? 
0  Ошибка структуры объекта: ошибка загрузки указанного ресурса метаданных 
1  Как довольно печатать метод итератора 
3  Представление строки в C # 
1  Разница между несколькими наследованиями и интерфейсами в C # 
1  Mongodb C # LINQ сгерированный запрос 
2  Высевание многих для многих кода EF первые отношения 
4  Создайте VCARD, который можно скачать на Android с помощью ASP.NET 
5  Сделать структуру сущности быть нечувствительными к регистру 
2  Обработка ошибок в свойствах, я знаю, что это плохо, нужно исправить, хотя 
-2  Гольф HCP Calculator