private void btnDeleteServer_Click(object sender, RoutedEventArgs e) { ServerSchema myServerSchema = (ServerSchema)cmbChooseServer.SelectedItem; if (m_Servers.ServerSchema.Count > 1) { for (int i = 0; i < this.stackServers.Children.Count; i++) { if (this.stackServers.Children[i] is ServerControl) { ServerControl myServerControl = (ServerControl)this.stackServers.Children[i]; ServerSchema compServerSchema = (ServerSchema)myServerControl.DataContext; if (myServerSchema.Equals(compServerSchema)) { if (i - 1 >= 0) { if (this.stackServers.Children[i - 1] is Separator) { this.stackServers.Children.RemoveAt(i - 1); } } if (this.stackServers.Children[i - 1] is ServerControl) { this.stackServers.Children.RemoveAt(i - 1); } } } } m_Servers.ServerSchema.Remove(myServerSchema); cmbChooseServer.SelectedItem = m_Servers.ServerSchema[0]; } /* * ServerControl servCtrl = new ServerControl(); * Separator sep = new Separator(); * if (m_Servers.OneServer) * { * sep.Visibility = System.Windows.Visibility.Collapsed; * } * sep.Width = servCtrl.Width; * sep.Height = 10; * sep.BorderThickness = new Thickness(10, 10, 10, 10); * sep.BorderBrush = Brushes.Black; * this.stackServers.Children.Add(sep); * ServerSchema newServerSchema = new ServerSchema(); * m_Servers.ServerSchema.Add(newServerSchema); * servCtrl.DataContext = newServerSchema; * servCtrl.Visibility = Visibility.Visible; * this.stackServers.Children.Add(servCtrl); * newServerSchema.Visible = true; * newServerSchema.PropertyChanged += m_Application.Model_PropertyChanged; * cmbChooseServer.SelectedItem = newServerSchema; */ }
public void SetVisibleServer(ServerSchema server) { for (int i = 0; i < this.stackServers.Children.Count; i++) { if (this.stackServers.Children[i] is ServerControl) { ServerControl tempServerControl = (ServerControl)this.stackServers.Children[i]; ServerSchema serverSchema = (ServerSchema)tempServerControl.DataContext; if (serverSchema.Equals(server)) { tempServerControl.Visibility = System.Windows.Visibility.Visible; serverSchema.Visible = true; //Application.Current.Resources["SAVE"] = false; bool saved = (bool)Application.Current.Resources["SAVE"]; if (saved) { Application.Current.MainWindow.Title = serverSchema.DisplayName + " " + Constants.sVersionString; } else { Application.Current.MainWindow.Title = serverSchema.DisplayName + " " + Constants.sVersionString + Constants.sChangedString; } //cmbChooseServer.SelectedItem = serverSchema; } else { tempServerControl.Visibility = System.Windows.Visibility.Collapsed; serverSchema.Visible = false; } } else if (this.stackServers.Children[i] is Separator) { Separator sep = (Separator)this.stackServers.Children[i]; sep.Visibility = System.Windows.Visibility.Collapsed; } } }
private void btnAddServer_Click(object sender, RoutedEventArgs e) { ServerControl servCtrl = new ServerControl(); Separator sep = new Separator(); if (m_Servers.OneServer) { sep.Visibility = System.Windows.Visibility.Collapsed; } sep.Width = servCtrl.Width; sep.Height = 10; sep.BorderThickness = new Thickness(10, 10, 10, 10); sep.BorderBrush = Brushes.Black; this.stackServers.Children.Add(sep); ServerSchema newServerSchema = new ServerSchema(); m_Servers.ServerSchema.Add(newServerSchema); servCtrl.DataContext = newServerSchema; servCtrl.Visibility = Visibility.Visible; this.stackServers.Children.Add(servCtrl); newServerSchema.Visible = true; newServerSchema.PropertyChanged += m_Application.Model_PropertyChanged; cmbChooseServer.SelectedItem = newServerSchema; if (m_Servers.OneServer) { for (int i = 0; i < this.stackServers.Children.Count; i++) { if (this.stackServers.Children[i] is ServerControl) { ServerControl serverControl = (ServerControl)this.stackServers.Children[i]; if (!serverControl.Equals(servCtrl)) { this.stackServers.Children[i].Visibility = System.Windows.Visibility.Collapsed; } ServerSchema serverSchema = (ServerSchema)serverControl.DataContext; if (!serverSchema.Equals(newServerSchema)) { serverSchema.Visible = false; } } else if (this.stackServers.Children[i] is Separator) { Separator tempSeparator = (Separator)this.stackServers.Children[i]; if (!tempSeparator.Equals(sep)) { tempSeparator.Visibility = System.Windows.Visibility.Collapsed; } } } } else { ShowServerChooser(false); m_Servers.OneServer = false; for (int i = 0; i < this.stackServers.Children.Count; i++) { if (this.stackServers.Children[i] is ServerControl) { ServerControl tempServerControl = (ServerControl)this.stackServers.Children[i]; if (tempServerControl.Visibility == System.Windows.Visibility.Collapsed) { tempServerControl.Visibility = System.Windows.Visibility.Visible; } } else if (this.stackServers.Children[i] is Separator) { Separator tempSeparator = (Separator)this.stackServers.Children[i]; if (tempSeparator.Visibility == System.Windows.Visibility.Collapsed) { tempSeparator.Visibility = System.Windows.Visibility.Visible; } } /* * if (this.stackServers.Children[i] is ServerControl) * { * ServerControl serverControl = (ServerControl)this.stackServers.Children[i]; * ServerSchema serverSchema = (ServerSchema)serverControl.DataContext; * serverSchema.Visible = false; * } */ } } /* * ServerSchema servSchema = (ServerSchema) this.DataContext; * Console.Out.WriteLine(servSchema.MailFrom); * Console.Out.WriteLine("Width " + stackServers.DesiredSize.Width); * ServerControl stackPanel = (ServerControl)stackServers.Children[0]; * StackPanel sp = (StackPanel)stackPanel.FindName("outerStackPanel"); * Console.Out.WriteLine("Width OuterStackpanel: " + sp.DesiredSize.Width.ToString()); * if (m_Servers != null) * { * m_Servers.SaveToFile("Servers2.xml"); * } * * ListBox mailsListBox = (ListBox)stackPanel.FindName("lstMails"); * //mailsListBox.It * * Window1 wnd1 = new Window1(); * wnd1.InitializeComponent(); * wnd1.ShowDialog(); */ }