2015-02-03 2 views
0

Я пишу проект, который имеет несколько форм. обе формы должны иметь возможность выполнять одну и ту же функцию, но только одна форма способна выполнить ее из-за макета. Можно ли открыть другую форму, сразу же запустить функцию, а затем вернуться к исходной форме с результатом функции как переменной?вызов функций из разных форм - визуальная студия

Функция превращает сетку кнопок на одной из форм в клавиатуру для сенсорного ввода. (только одна форма имеет правильную компоновку кнопок для этого)

+0

Существуют ли формы, созданные из родительской формы, или вы обнаруживаете, какую форму отображать при запуске приложения? –

ответ

0

Без примера вашей функции или представлений я не могу быть более конкретным, однако я думаю, что проблема здесь в вашей конструкции - это делается в MVC или MVVM модель сравнительно проста.

Примечание: Хотя большинство, если не все, примеры для этих моделей будет в ASP.Net и XAML это все еще так же, как это применимо к WinForms.

Первой и самой важной вещью, которую вам нужно сделать, является выделение логики этой функции из представления - класса контроллера или вспомогательного класса.

Таким образом, эта функция может выполняться из нескольких представлений без необходимости создавать или отображать вид, к которому он привязан.

Если в функции есть определенная по определенному виду логика (например, _view.MyButton.Text = "Push Me"), тогда вам нужно отделить ее дальше. Вы только хотите, чтобы функция выполняла логику, в которой она нуждалась, а затем передавала ее результаты обратно, к которым когда-либо просматривал ее называемый, - пусть представление обрабатывает материал как текстовое присвоение.

Это может показаться излишним, но оно более чистым и более удобным.

Смежные вопросы