У меня есть два User Control: ProgramsUS и ее дочерняя ShowCodeUS. На ProgramsUS находится treeview, нажимая на его узел, появляется ShowCodeUS. Проблема в том, что одновременно при нажатии на узел treeviw в textboxCode, который находится в ShowCodeUS, должен вводиться текст. Не понимаю, как реализовать передачу данных между UserControl.
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
showCode1.BringToFront();
//передать текст в textboxCode
}
Если проект не совсем большой, и не придётся много переписывать, то вариант, переехать на MVVM, и просто в ViewModel записывать состояние из TreeView, а в нужном UserControl, цеплять это состояние.
Решение "в лоб".
У ShowCodeUS сделать метод, который будет принимать нужный текст и в обработчике событий вызывать этот метод. Например:
showCode1.BringToFront();
showCode1.SetText("My Text");
Внутри метода SetText выводите текст куда нужно.
А, вообще по хорошему нужно использовать паттерны (MVVM или MVP). Это сильно упростит работу.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости