Предполагая, что я вас правильно понял, вы хотите сделать что-то вроде этого:
public void SendScansToForm(string[] scans) //pass in an array (or list, or etc.) of the scanned items
{
MyForm form = new MyForm(); //Create a new instance of the form
form.variableToHoldScans = scans; //variable (on the form instance) to pass the scan to
}
Таким образом, вы читали во всех сканирований, а затем передать их в новый экземпляр формы. Предположительно, это может сопровождаться form.Open()
или отображать сканирование для пользователя или изменять по мере необходимости для выполнения любой задачи.
EDIT:
Видимо, я не понял; если вы хотите портировать текущий код в формы, вы можете использовать System.IO.Stream
(как указано в комментариях). Кроме того, вам необходимо будет определить , как сканер завершает запись. Это может быть с обратным символом \n
, \r
и т. Д. Или каким-либо другим способом и, вероятно, изменениями в разных моделях сканера.
EDIT 2 - Дополнительная информация из комментариев:
Для того, чтобы прочитать входные данные от сканера, вы должны определить, какой характер она проходит, чтобы завершить ввод. Из моего ограниченного опыта это должно быть carriage return
, line feed
, enter
или что-то подобное.
После того, как это было определено, оно должно быть просто реализовать метод, который действует на присутствие этого персонажа, что позволяет обрабатывать каждую развертку, как они приходят в.
Сканеры (я верю), как правило, отправить возврат каретки (или аналогичный) после каждого сканирования. Вы хотите подождать, пока вы не получите все сканы и * только тогда * сделаете что-нибудь с информацией? – levelonehuman
Является ли приложение формы в другом проекте в решении? потому что, насколько я знаю, у вас не может быть двух из них в одном проекте. –
Используйте System.IO.Stream вместо Console.ReadLine, если вы хотите портировать это в приложение Forms. Вам нужно будет выяснить, как сканеры завершают ввод и записывают класс для управления связью с ними. –