public ChanelSelectWindow(string path, Window startupWindow) { _codeclosing = false; _startupWindow = startupWindow; Connections = new List <ConnectionUnion>(); InitializeComponent(); Title = ApplicationSettings.Name; MyWindow.SizeChanged += MyWindowOnSizeChanged; var parser = new AltiumParser.AltiumParser(path); var type = GetPsbType(parser); switch (type) { case PcbTypes.EttNew: pcb = new NewEttBoard(parser); Connections = pcb.Connections; break; case PcbTypes.EttOld: pcb = new OldEttBoard(parser); Connections = pcb.Connections; break; case PcbTypes.F2kNew: pcb = new NewF2KBoard(parser); Connections = pcb.Connections; break; } foreach (var connection in Connections) { Console.WriteLine(connection); } ConnectionList.ItemsSource = Connections; ConnectionList.SelectionChanged += ConnectionListOnSelectionChanged; var counter = 0; foreach (var connection in Connections) { counter += connection.Chanels.Count; } PCBInfo = "Плата " + Path.GetFileName(parser.FilePath)?.Replace(".SchDoc", "") + " || " + counter + " Каналов"; Report.Text = PCBInfo; if (pcb.GetType() == typeof(NewEttBoard) || pcb.GetType() == typeof(OldEttBoard)) { var temppcb = (EttPCB)pcb; Report.Text += " || " + temppcb.DutCount + " DUTs"; } }
private void NextButtonClick(object sender, RoutedEventArgs e) { if (Connections.Count != 0) { if (pcb.GetType() == typeof(NewEttBoard) || pcb.GetType() == typeof(OldEttBoard)) { var chanelConfigurationWindow = new ChanelConfigurationWindow(Connections, this) { WindowStartupLocation = WindowStartupLocation.Manual, Left = Left, Top = Top, Width = ActualWidth, Height = ActualHeight }; chanelConfigurationWindow.Show(); Hide(); } else { if (pcb.GetType() == typeof(NewF2KBoard)) { var outputWindow = new F2KOutputWindow(Connections, this, PCBInfo) { WindowStartupLocation = WindowStartupLocation.Manual, Left = Left, Top = Top, Width = ActualWidth, Height = ActualHeight }; outputWindow.Show(); Hide(); } } } }