public MainForm() { InitializeComponent(); m_screens = new UPScreens(); RefreshScreens(); LoadSettings(); if (Directory.Exists(CurrentPath)) { ListenToFolder(); } else { StopListening(); } }
public void RefreshScreens() { string strCurrent = ""; if (m_currentScreen != null) { strCurrent = m_currentScreen.WindowsScreen.DeviceName; } m_screens = new UPScreens(); lbScreens.Items.Clear(); int iFirstNonPrimary = -1; foreach (var s in m_screens.Screens) { int i = lbScreens.Items.Add(s); if (iFirstNonPrimary < 0 && !s.WindowsScreen.Primary) { iFirstNonPrimary = i; } if (strCurrent.Length > 0) { if (s.WindowsScreen.DeviceName == strCurrent) { lbScreens.SelectedIndex = i; } } } if (lbScreens.SelectedItem == null && iFirstNonPrimary > 0) { lbScreens.SelectedIndex = iFirstNonPrimary; } else { lbScreens.SelectedIndex = 0; // No Second Monitor Has Been Found! } }