Я использую форму MainForm
Windows, которая вызывает следующее:Связь между двумя классами с помощью формы
FileSystemLayer FSL = new FileSystemLayer();
DatabaseLayer DBL = new DatabaseLayer();
Что я хочу сделать:
(внутри класса DatabaseLayer)
String SomeString = MainForm.FSL.AnotherString;
Проблема
FileSystemLayer FSL недоступен из-за его уровня защиты
Я попытался
public FileSystemLayer FSL = new FileSystemLayer();
public DatabaseLayer DBL = new DatabaseLayer();
Но это дало результат
несогласованной доступность: «DatabaseLayer 'менее доступно, чем Поле' MainForm.DBL '
Так что я надеюсь, что кто-то может дать мне несколько советов о том, как общаться между двумя классами.
HTTP: // StackOverflow.com/questions/1665533/communication-between-two-windows-forms-in-c-sharp – Zaki
Если вы создали класс DatabaseLayer Public, я думаю, что это решит проблему. Но большая проблема заключается в том, что я думаю, что вы должны прислушаться к рекомендации по ссылке выше, или в аренду передать ссылку на FSL до DBL вместо того, чтобы пытаться получить доступ к FSL из DBL после факта. Подумайте, публичный DatabaseLayer DBL = новый DatabaseLayer (FileSystemLayer fSL); – Killingsworth