Почему переключатель checked не установлен в true.
Я разрабатываю небольшое приложение с использованием visual studio 2017 edition. У меня есть два переключателя в главном меню. Я поставил их свойства checked в false при проектировании и установить proprty модификаторы для общественности. У меня есть событие RadioButton_checkedChanged в файле mainFroms.cs, как показано ниже.
private void radioButtonA_CheckedChanged(object sender, EventArgs e) { if (radioButtonA.Checked == true) { Address = 192; ToAddress = 150; } } private void radioButtonB_CheckedChanged(object sender, EventArgs e) { if (radioButtonB.Checked == true) { Address = 255; ToAddress = 100; } }
У меня есть класс последовательного порта, где я получаю данные от аппаратного обеспечения. У меня есть экземпляр последовательного порта в mainForm.
в последовательном классе я использовал экземпляр mainFrom для изменения состояния переключателя. как будто проверено на истинность.
Что я уже пробовал:
void comPort_DataReceived(object sender, SerialDataReceivedEventArgs e) { //retrieve number of bytes in the buffer int bytes = configcomPort.BytesToRead; //create a byte array to hold the awaiting data byte[] comBuffer = new byte[bytes]; //read the data and store it configcomPort.Read(comBuffer, 0, bytes); if(comBuffer[0] == 6 && comBuffer.Length > 5) { Software.FrmMain frmMain = new Software.FrmMain(); if (comBuffer[3] == 100) frmMain.radioButtonA.Checked = true; } }
Я не знаю, почему это не было установлено RadioButton Checked в true. Во время отладки я вижу, что статус true и событие RadioButton_CheckChanged возникает в mainFrom, но в конструкторе radiobutton пуст. он показывал не выбранный или проверенный фасль.
Может ли кто-нибудь указать мне, где я делаю что-то не так?? как решить эту проблему??
Заранее спасибо.
Rob Philpott
Почему вы создаете новую форму, когда данные получены? Это странно, и это не сработает. Эта форма никогда не отображается, и даже если бы это было так, то возникли бы глубокие проблемы с потоками, как указано в ответе ниже...
vebi1000
@Rob Philpott когда полученные данные мне нужно установить, какая система подключена, для настройки у меня есть переключатели для двух систем A и B. В зависимости от данных я должен установить одну из них. эти переключатели находятся в основном от. У меня есть еще один класс последовательной связи. Как назвать тех, переключатель chechkChanged evnts из класса последовательный порт??