Beispiel #1
0
 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();
            }