I have a C# Winforms app that uses the HelpProvider class. Whenever i press F1 to bring up help, the help window will always be on top of my application, I cannot bring my application UI to the foreground. I can still interact with my UI, but the help window will remain on top.
Is this by design of HelpProvider? Or am I missing something?
Это действительно задумано, и я этого не осознавал. Я только что перекомпилировал свой последний годичный проект и подтвердил его. Я читал об этом, и в основном файл справки устанавливается в TopMost=True каждый раз, когда нажимается форма. Это означает, что даже если вы закодируете свою форму как TopMost, как только вы щелкнете по файлу справки, она снова вернется наверх.
Я считаю, что если вы используете процесс запуска, он должен обойти проблему за счет потери некоторой настраиваемости, предоставляемой поставщиком помощи.
private void textBox1_KeyDown(object sender,
System.Windows.Forms.KeyEventArgs e)
{
if(e.KeyCode ==Keys.F1)
{
System.Diagnostics.Process.Start(@"C:\WINDOWS\Help\mspaint.chm");
}
}
Надеюсь, это поможет