Окно приложения, отправленное позади других окон при закрытии другого обсуждения (C#)

Я много искал. Кажется, что нет никакого способа сравнения указателей функций. Лучшим решением, которое я получил, является инкапсуляция функции или закрытия в хешируемый объект. Например:

var handler:Handler = Handler(callback: { (message:String) in
            //handler body
}))
15
задан Matt Hamilton 13 October 2008 в 01:51
поделиться

4 ответа

Попытайтесь назвать.Activate () на Вашем главном окне, когда Ваш поток закроется.

Это никогда не было активно, и таким образом имеет низкий Z-порядок, таким образом, то независимо от того, что выше, естественно будет выше его. Я должен был исправить этот точный сценарий в нашем приложении.

не забывают! Вы, возможно, должны упорядочить вызов к корректному потоку с помощью Вызывания ()!

11
ответ дан 1 December 2019 в 05:02
поделиться

Я имел, это происходит время от времени также. Ответ Bob's является самым легким и работает на меня в большинстве случаев. Однако были несколько раз, где я должен использовать грубую силу. Сделайте это через interop как это:

[DllImport ("user32.dll")] общедоступный статический экстерн bool SetForegroundWindow (IntPtr hWnd);

1
ответ дан 1 December 2019 в 05:02
поделиться

Действительно ли экран-заставка является Модальным диалоговым окном?

я видел, что это окно 'переходит', если Вы отклоняете Модальное диалоговое окно дважды путем установки и DialogResult и вызова, Скрываются () или близко ().

Код как это:

private void button1_Click(object sender, System.EventArgs e)
{
     this.DialogResult = DialogResult.Abort;
     this.Hide();
}

См. этот запись в блоге для всех случаев...

0
ответ дан 1 December 2019 в 05:02
поделиться

Вы можете использовать такой код :

private void button1_Click(object sender, System.EventArgs e)
{
     this.DialogResult = DialogResult.Abort;
     this.Hide();
}

Спасибо всем!

-3
ответ дан 1 December 2019 в 05:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: