private async Task SetupWifi() { Debug.WriteLine("SetupWifi start"); if (await networkPresenter.WifiIsAvailable()) { IList <WiFiAvailableNetwork> networks; try { networks = await networkPresenter.GetAvailableNetworks(); var emptys = networks.Where(w => string.IsNullOrEmpty(w.Ssid.Trim())).ToList(); foreach (WiFiAvailableNetwork wn in emptys) { networks.Remove(wn); } networks = networks.OrderBy(w => w.Ssid).ToList(); } catch (Exception e) { Debug.WriteLine(String.Format("Error scanning: 0x{0:X}: {1}", e.HResult, e.Message)); DisconnectButtonEnabled = true; NoWifiFoundText = e.Message; NoWifiFoundVisibility = Visibility.Visible; return; } Debug.WriteLine("SetupWifi networks :: " + networks.Count); if (networks.Count > 0) { ConnectedNetwork = networkPresenter.GetCurrentWifiNetwork(); Debug.WriteLine("SetupWifi ConnectedNetwork :: " + ConnectedNetwork); if (ConnectedNetwork != null) { networks.Remove(ConnectedNetwork); networks.Insert(0, ConnectedNetwork); WifiListSources = new ObservableCollection <WiFiAvailableNetwork>(networks); Debug.WriteLine("SetupWifi UpdateLayout!!!!!!!!!! :: "); SwitchToItemState(ConnectedNetwork, "WifiConnectedState", true); } else { WifiListSources = new ObservableCollection <WiFiAvailableNetwork>(networks); } DisconnectButtonEnabled = true; NoWifiFoundVisibility = Visibility.Collapsed; WifiListVisibility = Visibility.Visible; return; } } DisconnectButtonEnabled = true; NoWifiFoundVisibility = Visibility.Visible; WifiListVisibility = Visibility.Collapsed; Debug.WriteLine("SetupWifi end"); }
public async Task RefreshWiFiListViewItemsAsync(bool refreshIfNeeded) { if (await _networkPresenter.WiFiIsAvailable()) { bool isRefreshNeeded = _networkPresenter.IsRefreshNeeded(); EnableView(false, false); try { var networks = await _networkPresenter.GetAvailableNetworks(refreshIfNeeded); if (networks.Count > 0) { var connectedNetwork = _networkPresenter.GetCurrentOOBENetworkName(); if (connectedNetwork != null) { networks.Remove(connectedNetwork); networks.Insert(0, connectedNetwork); } WiFiListView.ItemsSource = WiFiListViewItems = new ObservableCollection <WiFiListViewItemPresenter>(networks); var item = SwitchToItemState(connectedNetwork, WiFiConnectedState, true); if (item != null) { WiFiListView.SelectedItem = item; } NoWiFiFoundText.Visibility = Visibility.Collapsed; WiFiListView.Visibility = Visibility.Visible; EnableView(true, true); return; } } catch (Exception e) { App.LogService.Write(string.Format("Error scanning: 0x{0:X}: {1}", e.HResult, e.Message)); NoWiFiFoundText.Text = e.Message; NoWiFiFoundText.Visibility = Visibility.Visible; EnableView(true, true); return; } } NoWiFiFoundText.Visibility = Visibility.Visible; WiFiListView.Visibility = Visibility.Collapsed; }