Дело в том, что для IntPtr мне нужно создать отдельное окно, в рамках MVVM я не могу использовать основное т.к. модель должна быть самостоятельной
Сейчас я создаю окно так:
new Window() {
Visibility = Visibility.Hidden,
WindowStyle = WindowStyle.None,
Width = 0,
Height = 0
};
Но есть проблемы:
1) Несмотря на Visibility.Hidden окно сначала появляется на некоторое время, а уже потом исчезает, по этому я и пишу остальные свойства
2) Несмотря на отсутствие верхнего заголовка (WindowStyle.None) и нулевые размеры кона, все равно появляется его обводка, её видно
3) Новое окно так же на время появляется в панели задач
Как можно создать полностью скрытое окно из кода?
С win.api загнул. Предлагаю следующие решение из костылей и велосипедов. Окно банально запускается в самом правом нижнем углу, со свойствами Visibility.Hidden и ShowInTaskbar = false. Данный костыль полностью делает незаметным открытие данного окна - не появляется обводка на пару секунд. А также ShowInTaskbar = false скрывает в менеджере задач данное окно.
Window wnd = new Window()
{
Visibility = Visibility.Hidden,
ShowInTaskbar = false,
Title = "Hidden window",
Width = 0,
Height = 0,
WindowStartupLocation = WindowStartupLocation.Manual,
Left = SystemParameters.PrimaryScreenWidth,
Top = SystemParameters.PrimaryScreenHeight
};
wnd.Show();
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости