Теперь, прежде чем кто-либо отправится и отметит этот вопрос как дубликат, я хотел бы сказать, что моя проблема отличается от других. Я пытаюсь открыть существующую форму из другого, но у меня возникают проблемы в том смысле, что я установил некоторые формы для «размещения» других (для переноса переменных между ними). Вот что я имею в виду:Открытие новой формы Windows из другой формы
public partial class Schedule_Tasks : Form
{
readonly Schedules schedules;
public Schedule_Tasks(Schedules host)
{
this.schedules = host;
InitializeComponent();
}
Так что в этом фрагменте кода, я пытаюсь получить значение некоторых переменных из формы расписаний, в форме Schedule_Tasks. Поэтому я использовал систему «хост». SO далеко этот метод работает отлично, но моя проблема возникает, когда я пытаюсь открыть конкретную форму, от другой, которая не является «хостингом». Например, используя:
new Schedules().Show();
Так, очевидно, когда я объявляю это, я бы сказал что-то вроде «это» в скобках после расписания, но это не будет работать, если форма вызывается из вне Форма «хозяин». Я просто хотел бы сейчас, есть ли что-то, чего я не вижу или могу изменить? Пожалуйста, дайте мне знать, если какая-либо часть не ясна, это немного сложно объяснить. Любая помощь приветствуется, Cheers.
EDIT
Вот код, который я работаю в настоящее время:
public partial class Schedual_Tasks : Form
{
readonly Scheduals scheduals;
public string selectedDevice;
public string getPath;
public string totalPath;
public Schedual_Tasks(Scheduals host)
{
this.scheduals = host;
InitializeComponent();
selectedDevice = scheduals.itemSelected;
}
private void Schedual_Tasks_Load(object sender, EventArgs e)
{
}
private void changeDirectory_Click(object sender, EventArgs e)
{
new Folder_Browser(this).Show(); //Error Occurs here
}
}
А вот конструктор Folder_Browser, который является формой я пытаюсь позвонить:
readonly Back_up_Options backOptions;
public string deviceSel;
public Folder_Browser(Back_up_Options host)
{
InitializeComponent();
this.backOptions = host;
deviceSel = backOptions.deviceSel;
}
Я думаю, что вы не можете 'new Schedules(). Show();' вы могли бы вызвать метод объекта после создания экземпляра say 'myForm = new Schedules();' myForm.Show(); 'Но я не хочу еще не знаете, что вы имели в виду под формой '', от другой, которая не является хостингом ''? Лучше всего разместить большинство, если не ВСЕ, кода, чтобы мы могли видеть всю картину. – Edper
Расписания также являются «Формой», правильно? Когда вы говорите о проблеме, которая возникает, в чем проблема? Ошибка компиляции или время выполнения? –
'schedules.Show()' не работает? –