Вам не нужно осваивать React, но вы должны иметь хотя бы некоторые знания React, так как они оба построены на React, а ход работы в значительной степени основан на способе выполнения React. вещи.
Обязательно ознакомьтесь с официальным руководством по React , если ничего кроме того, прежде чем изучать Gatsby или Next.js, это действительно поможет вам понять, что вы делаете и почему вы это делаете, а не слепо копировать. и вставлять код из их примеров, не зная, что это значит.
Это должно запустить Вас. Получите Кнопку и поле списка на Форме и поместите это в Button_Click:
listBox1.Items.Clear();
foreach (var screen in Screen.AllScreens)
{
listBox1.Items.Add(screen);
}
listBox1.SelectedItem = Screen.FromControl(this);
Ответ находится в последней строке, помните, что Формой является Управление также.
Система. Windows. Формы. Экранный класс обеспечивает этот functionaility.
Например:
Экран s = Экран. FromPoint (p);
где p является Точка где-нибудь на Вашем приложении (в координатах экрана).
Хм, я не думаю, что существует созданный способом получить это, но не должно быть слишком трудно определить. Используйте Экранный класс, чтобы найти все экраны, цикл через тот список и сравнить его границы с местоположением формы.
Вот некоторый непротестированный код
Screen [] screens = Screen.AllScreens;
for(index = 0; index < screens.Length; index++) {
if (screens[index].Contains(this.Bounds))
return screens[index];
}
Смотрите на эти ссылки:
Они находятся в WinAPI. Может быть.NET несколько библиотек/вызовов API монитора, но в противном случае с ними можно записать собственное.