### Godot version

4.0-stable_mono_win64

### System information

Windows 11 22H2

### Issue description

> 
![Script](https://user-images.githubusercontent.com/43518523/224719220-9ab4a56c-2e9c-4c1b-bebe-d62eb23e372b.png)
![Bug](https://user-images.githubusercontent.com/43518523/224719256-34436394-6d89-4a2e-a588-f9f11ae06ea1.png)
Expected: The parameter type of OnChildEnteredTree (underlined) in the dialog is Node, not Object.

### Steps to reproduce

1. Write a public (signal listener) C# function with a Node parameter.
2. Build .NET project.
3. Try to connect some suitable signal (e.g. "child_entered_tree") to that function, and it won't appear in the Pick dialog if `Compatible Methods Only` is on.

### Minimal reproduction project

[SignalParamBug.zip](https://github.com/godotengine/godot/files/10958019/SignalParamBug.zip)

Ref<CSharpScript> scr = ResourceLoader::load(p_path, get_type());
	if (!scr.is_valid() || !scr->valid || !scr->global_class) {
		
		return String();
	}
	String name = scr->class_name;
	if (unlikely(name.is_empty())) {
		return String();
	}
	if (r_icon_path) {
		if (scr->icon_path.is_empty() || scr->icon_path.is_absolute_path()) {
			*r_icon_path = scr->icon_path.simplify_path();
		} else if (scr->icon_path.is_relative_path()) {
			*r_icon_path = p_path.get_base_dir().path_join(scr->icon_path).simplify_path();
		}
	}
	if (r_base_type) {
		bool found_global_base_script = false;
		const CSharpScript *top = scr->base_script.ptr();
		while (top != nullptr) {
			if (top->global_class) {
				*r_base_type = top->class_name;
				found_global_base_script = true;
				break;
			}
			top = top->base_script.ptr();
		}
		if (!found_global_base_script) {