private void ReportStatusChange(CurStatus cs) { if (StatusChanged != null) { StatusChangeArgs sa = new StatusChangeArgs(cs); try { StatusChanged(this, sa); } catch { } } }
public void SigQChangedF(object sender, StatusChangeArgs e) { if (e.Change == StatusChangeArgs.ChangeType.SIGNAL) {// SignalStrength в децибелах //if (e.SignalStrength <= -95) //{ // base.SignalPercent = (e.SignalStrength == -95) ? 1 : 0; //} //else if (e.SignalStrength > -35) //{ // base.SignalPercent = 100; //} //else //{ // int nS = Math.Abs(e.SignalStrength); // base.SignalPercent = (int)(((float)(95 - nS) / 60) * 100); //} base.SignalPercent = base.RSS2Level(WiFiStat.MINRSS,WiFiStat.MAXRSS,e.SignalStrength); switch (e.SignalQuality) { case Adapter.SignalQualityRange.EXCELLENT: base.SignalQuality = 31; break; case Adapter.SignalQualityRange.FAIR: base.SignalQuality = 15; break; case Adapter.SignalQualityRange.GOOD: base.SignalQuality = 20; break; case Adapter.SignalQualityRange.NONE: base.SignalQuality = 0; break; case Adapter.SignalQualityRange.POOR: base.SignalQuality = 10; break; case Adapter.SignalQualityRange.VERYGOOD: base.SignalQuality = 25; break; } } WiFiStat.GetIP(); WiFiStat.sESSID = xWiFiCard.ESSID; base.pgbWiFiIndicator.Invalidate(); }