/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="sender"> /// The source of the event; typically <see cref="NavigationHelper"/> /// </param> /// <param name="e">Event data that provides both the navigation parameter passed to /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested and /// a dictionary of state preserved by this page during an earlier /// session. The state will be null the first time a page is visited.</param> private void navigationHelper_LoadState(object sender, LoadStateEventArgs e) { if (e.NavigationParameter == null) { this.Frame.GoBack(); } if (!(e.NavigationParameter is Guid)) { this.Frame.GoBack(); return; } Guid guid = (Guid)e.NavigationParameter; ITerminal terminal = TerminalManager.GetTerminal(guid); if (terminal == null) { this.Frame.GoBack(); return; } this.Terminal = terminal; this.previewGrid.ItemsSource = TerminalManager.Terminals; }
/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="sender"> /// The source of the event; typically <see cref="NavigationHelper"/> /// </param> /// <param name="e">Event data that provides both the navigation parameter passed to /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested and /// a dictionary of state preserved by this page during an earlier /// session. The state will be null the first time a page is visited.</param> private void navigationHelper_LoadState(object sender, LoadStateEventArgs e) { PrivateKeysDataSource privateKeysDataSource = (PrivateKeysDataSource)App.Current.Resources["privateKeysDataSource"]; if (privateKeysDataSource != null) { var items = new ObservableCollection<PrivateKeyData>(privateKeysDataSource.PrivateKeys.OrderBy(f => f.FileName)); this.DefaultViewModel["Items"] = items; this.emptyHint.Visibility = this.itemGridView.Items.Count == 0 ? Visibility.Visible : Visibility.Collapsed; this.SetupAppBar(); } }
/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="sender"> /// The source of the event; typically <see cref="NavigationHelper"/> /// </param> /// <param name="e">Event data that provides both the navigation parameter passed to /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested and /// a dictionary of state preserved by this page during an earlier /// session. The state will be null the first time a page is visited.</param> private void navigationHelper_LoadState(object sender, LoadStateEventArgs e) { this.mode = ConnectionDataMode.Edit; string id = e.NavigationParameter as string; this.sshRadioButton.IsChecked = true; this.authenticationMethodComboBox.SelectedIndex = 0; PrivateKeysDataSource privateKeysDataSource = (PrivateKeysDataSource)App.Current.Resources["privateKeysDataSource"]; if (privateKeysDataSource != null) { var privateKeys = from privateKey in privateKeysDataSource.PrivateKeys orderby privateKey.FileName select privateKey.FileName; this.privateKeyComboBox.ItemsSource = privateKeys; } if (id == null) { this.mode = ConnectionDataMode.QuickConnect; this.nameOptions.Visibility = Visibility.Collapsed; } else if (id.Length == 0) { this.mode = ConnectionDataMode.New; } else { ConnectionData connectionData = FavoritesDataSource.GetFavorite(id); if (connectionData == null) { this.Frame.GoBack(); return; } this.nameTextBox.Text = connectionData.Name; switch (connectionData.Type) { case ConnectionType.Ssh: this.sshRadioButton.IsChecked = true; this.telnetRadioButton.IsChecked = false; break; case ConnectionType.Telnet: this.sshRadioButton.IsChecked = false; this.telnetRadioButton.IsChecked = true; break; } this.hostTextBox.Text = connectionData.Host; this.portTextBox.Text = connectionData.Port.ToString(); this.usernameTextBox.Text = connectionData.Username; this.authenticationMethodComboBox.SelectedIndex = (int)connectionData.Authentication; this.privateKeyComboBox.SelectedItem = connectionData.PrivateKeyName; this.privateKeyAgentForwardingCheckBox.IsChecked = connectionData.PrivateKeyAgentForwarding; this.id = connectionData.Id; } this.SetupPageTitle(); this.SetupAppBar(); }
/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="sender"> /// The source of the event; typically <see cref="NavigationHelper"/> /// </param> /// <param name="e">Event data that provides both the navigation parameter passed to /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested and /// a dictionary of state preserved by this page during an earlier /// session. The state will be null the first time a page is visited.</param> private async void navigationHelper_LoadState(object sender, LoadStateEventArgs e) { FavoritesDataSource favoritesDataSource = (FavoritesDataSource)App.Current.Resources["favoritesDataSource"]; if (favoritesDataSource != null) { var items = new ObservableCollection<ConnectionData>(favoritesDataSource.Favorites.OrderBy(f => f.Name)); this.DefaultViewModel["Items"] = items; this.emptyHint.Visibility = this.itemGridView.Items.Count == 0 ? Visibility.Visible : Visibility.Collapsed; this.SetupAppBar(); } #if DEBUG this.licenseInformation = CurrentAppSimulator.LicenseInformation; #else this.licenseInformation = CurrentApp.LicenseInformation; #endif this.RefreshTrialHint(); this.licenseInformation.LicenseChanged += RefreshTrialHint; if (TerminalManager.Terminals.Count > 0) { this.previewGrid.ItemsSource = TerminalManager.Terminals; this.TopAppBar.IsOpen = true; await Task.Delay(1000); this.TopAppBar.IsOpen = false; } else { this.TopAppBar = null; } }
/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="sender"> /// The source of the event; typically <see cref="NavigationHelper"/> /// </param> /// <param name="e">Event data that provides both the navigation parameter passed to /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested and /// a dictionary of state preserved by this page during an earlier /// session. The state will be null the first time a page is visited.</param> private void navigationHelper_LoadState(object sender, LoadStateEventArgs e) { // TODO: Assign a bindable collection of items to this.DefaultViewModel["Items"] PrivateKeysDataSource privateKeysDataSource = (PrivateKeysDataSource)App.Current.Resources["privateKeysDataSource"]; if (privateKeysDataSource != null) { var keys = new ObservableCollection<PrivateKeyData>(privateKeysDataSource.PrivateKeys.OrderBy(f => f.FileName)); this.DefaultViewModel["Keys"] = keys; } this.AgentKeys = new ObservableCollection<PrivateKeyAgentKey>(PrivateKeyAgentManager.PrivateKeyAgent.ListSsh2()); this.DefaultViewModel["AgentKeys"] = this.AgentKeys; this.SetEmptyHintVisibilities(); }