Open Liv-Goh opened 4 days ago
It should be:
if (!string.IsNullOrEmpty(HelpNamespace))
@Liv-Goh two things:
@elachlan the test results are as below
- What is the value of the HelpNamespace in the designer.cs?
HelpNamespace value is empty string in both .NET 8 and 9
- What is the stack trace from .NET 8? (we should see what argument exception is thrown.)
System.ArgumentException HResult=0x80070057 Message=Help URL '' is not valid. (Parameter 'url') Source=System.Windows.Forms StackTrace: at System.Windows.Forms.Help.ShowHTMLFile(Control parent, String url, HelpNavigator command, Object param) at System.Windows.Forms.HelpProvider.OnControlHelp(Object sender, HelpEventArgs hevent) at System.Windows.Forms.Control.OnHelpRequested(HelpEventArgs hevent) at System.Windows.Forms.Control.WmHelp(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(HWND hWnd, MessageId msg, WPARAM wparam, LPARAM lparam)
Help.GetHelpFileType
probably needs to check for empty string instead of a standard null check. We also should probably throw ArugementNullException
in ShowHTML10Help
, like we do in ShowHTMLFile
.
@elachlan would you like to work on this one, or should I assign a team member? This is definitely one I want to take for .NET 9.
@merriemcgaw happy for someone else to take this on.
@LeafShi1 - could your teams please take a look?
.NET version
.NET 9.0 SDK build: 9.0.100-preview.7.24321.3
Did it work in .NET Framework?
Yes
Did it work in any of the earlier releases of .NET Core or .NET 5+?
Yes, this is a regression issue. Not reproduced on .NET 8.0
Issue description
Current Behavior (.NET 9.0): When the helpNamespace property in helpProvider is blank after delete the previous saved URL, project exit from runtime automatically when press F1 and no error exception popped out.
https://github.com/dotnet/winforms/assets/169347065/fb053321-b64c-4e64-ab81-9c72b4d5ffcf
Expected Behavior (.NET 8.0): When the helpNamespace property in helpProvider is blank after delete the previous saved URL, error exception popped out when press F1.
Steps to reproduce