Media component sends notification, when its state changes.
- sender (Object)
- The source of the event.
- state (MediaState)
- Status information from media state.
/// <summary>
/// Update UI when media state changes.
/// </summary>
/// <param name="sender"></param>
/// <param name="State"></param>
private void gxTerminal1_OnMediaStateChange(object sender, Gurux.Common.MediaState State)
{
try
{
bool bOpen;
bOpen = State == Gurux.Common.MediaState.Open;
HexCB.Enabled = ! bOpen;
OpenBtn.Enabled = ! bOpen;
SendText.Enabled = bOpen;
SendBtn.Enabled = bOpen;
CloseBtn.Enabled = bOpen;
ReceivedText.Enabled = bOpen;
StatusTimer.Enabled = bOpen;
PacketCounterTimer.Enabled = bOpen;
//Close interval timer if media is closed.
if (! bOpen)
{
IntervalTB.Enabled = false;
IntervalTimer.Enabled = false;
IntervalBtn.Enabled = false;
}
else
{
IntervalTB.Enabled = true;
IntervalBtn.Enabled = true;
}
//Read network status if media is opened.
if (bOpen)
{
StatusTimer_Tick(StatusTimer, new System.EventArgs());
}
else
{
RSSITB.Text = "";
BERTB.Text = "";
BatteryCapacityTB.Text = "";
PowerConsumptionTB.Text = "";
NetworkStatusTB.Text = "";
}
}
catch (Exception Ex)
{
MessageBox.Show(Ex.Message);
}
}
''' <summary>
''' Update UI when media state changes.
''' </summary>
Private Sub GxTerminal1_OnMediaStateChange(ByVal sender As System.Object, ByVal State As Gurux.Common.MediaState) Handles GxTerminal1.OnMediaStateChange
Try
Dim bOpen As Boolean
bOpen = State = Gurux.Common.MediaState.Open
HexCB.Enabled = Not bOpen
OpenBtn.Enabled = Not bOpen
SendText.Enabled = bOpen
SendBtn.Enabled = bOpen
CloseBtn.Enabled = bOpen
ReceivedText.Enabled = bOpen
StatusTimer.Enabled = bOpen
PacketCounterTimer.Enabled = bOpen
'Close interval timer if media is closed.
If Not bOpen Then
IntervalTB.Enabled = False
IntervalTimer.Enabled = False
IntervalBtn.Enabled = False
Else
IntervalTB.Enabled = True
IntervalBtn.Enabled = True
End If
'Read network status if media is opened.
If bOpen Then
StatusTimer_Tick(StatusTimer, New System.EventArgs())
Else
RSSITB.Text = ""
BERTB.Text = ""
BatteryCapacityTB.Text = ""
PowerConsumptionTB.Text = ""
NetworkStatusTB.Text = ""
End If
Catch Ex As Exception
MessageBox.Show(Ex.Message)
End Try
End Sub
Private Sub GXTerminal1_OnMediaStateChange(ByVal sender As Object, ByVal State As GuruxTerminalCtl.GX_MEDIA_STATE_CHANGE)
On Error GoTo GXErr
Dim bOpen As Boolean
bOpen = State = GX_MEDIA_STATE_CHANGE_OPEN
HexCB.Enabled = Not bOpen
OpenBtn.Enabled = Not bOpen
SendText.Enabled = bOpen
SendBtn.Enabled = bOpen
CloseBtn.Enabled = bOpen
ReceivedText.Enabled = bOpen
StatusTimer.Enabled = bOpen
PacketCounterTimer.Enabled = bOpen
'Close interval timer if media is closed.
If Not bOpen Then
IntervalTB.Enabled = False
IntervalTimer.Enabled = False
IntervalBtn.Enabled = False
Else
IntervalTB.Enabled = True
IntervalBtn.Enabled = True
End If
'Read network status if media is opened.
If bOpen Then
StatusTimer_Timer
Else
RSSITB.Text = ""
BERTB.Text = ""
BatteryCapacityTB.Text = ""
PowerConsumptionTB.Text = ""
NetworkStatusTB.Text = ""
End If
Exit Sub
GXErr:
MsgBox Err.Description
End Sub
Assembly: Gurux.Terminal (Module: Gurux.Terminal) Version: 5.0.0.1