Если форма Public
, к ней можно получить доступ из-за пределов текущей сборки (.exe). Если это Friend
, то он доступен только из сборки. Те же правила уровня доступа применяются к Forms, как и другие классы VB.NET.
Я не могу вспомнить общую ситуацию с Winforms, когда вам понадобятся публичные формы, потому что они обычно находятся в одной сборке, что делает друга достаточно хорошим. Если у вас не было форм, разбросанных по разным сборкам, и они должны были ссылаться друг на друга.
Возможно, команда Microsoft, написавшая инструмент импорта, выбрала Friend, потому что все формы были взяты из одного и того же классического проекта, тогда как команда Visual Studio (New Item) выбрала Public, потому что .NET больше работает с модульными проектами. Это может быть так просто.