|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
Как сделать так чтобы в зависимости от установки флага в чекбоксе главной формы (Form1) выполнялись разные действия в Form2? Код Form2 if (Form1.checkBox1.Checked == true) a = 1; if (Form1.checkBox1.Checked == false) b = 2; Компилятор не видит Form1 из второй формы ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 11:49 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
webber81, А Вы не сразу в форме код клепайте, а пишите контроллер в котором вешайте события на форму. От туда все видно будет. Но в данном случае сделайте примерно так: в Form1 private void checkBox1_CheckedChanged(object sender, EventArgs e) { if (checkBox1.Checked) Form2.a=1; else Form2.b=2; } Хотя, это совершенно не грамотно с точки зрения архитектуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:00 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTEwebber81, А Вы не сразу в форме код клепайте, а пишите контроллер в котором вешайте события на форму. От туда все видно будет. Но в данном случае сделайте примерно так: в Form1 private void checkBox1_CheckedChanged(object sender, EventArgs e) { if (checkBox1.Checked) Form2.a=1; else Form2.b=2; } Хотя, это совершенно не грамотно с точки зрения архитектуры.Почему не грамотно? Компонентный подход: родительский компонент Form1 имеет ссылку на дочерний компонент Form2 и пользуется этим напрямую. Только ТС, вместо свойств, нужно дёргать действия. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:13 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANA, Да потому что, тут, как я понял, код прямо в форме пишется, без контроллера и модели. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:18 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTEskyANA, Да потому что, тут, как я понял, код прямо в форме пишется, без контроллера и модели.Контроллер - это частный случай MV* архитектуры. Совершенно не обязательно ему быть. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:20 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANA, Мериться Фаулером, конечно, не стоит, но если бы он(контроллер) был, то подобная проблема бы, даже не возникла. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:22 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
webber81, ты похоже обращаешься к экземплярному полю класса так как будто это статическое поле. Чтобы исправить это можно передать экзепмляр первой формы при создании второй. Примерно так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Еще лучше вместо формы передавать нужные "настройки". То есть передавать в конструктор Form2 признак отметки: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
webber81Компилятор не видит Form1 из второй формы Вместо пересказа своими словами лучше всегда приводить полный текст ошибки. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:25 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
bazile, Вы б ему еще, делегаты предложили использовать. Не факт, что данный код должен отработать до вызова конструктора второй формы. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:30 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTEskyANA, Мериться Фаулером, конечно, не стоит, но если бы он(контроллер) был, то подобная проблема бы, даже не возникла.Я очень рад, что Вы прочитали Фаулера и познакомились с MVC (я вот его к примеру толком не читал). Но не стоит простой компонентный подход записывать в не грамотные архитектуры. Главный компонент знает о модели и управляет своими дочерними компонентами, передавая им либо модель целиком, либо часть, либо какие-то их модели, либо ничего. Что тут не грамотного? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:37 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANA, Например, если подчиненные формы понадобиться вызвать из других форм, то начнется дублирование кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 13:45 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTE, какого кода? Кода создания подчинённой формы? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 14:07 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANA, Кода обращений главной формы к подчиненным. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 14:09 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTE, у Вас горизонтальные связи получаются. Их можно и в контроллерах нафигачить при желании. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 14:11 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANA, Так я с самого начала и говорил, что нужно контроллер использовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 14:14 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTEskyANA, Так я с самого начала и говорил, что нужно контроллер использовать.Зачем? Контроллеры сами по себе не гарантируют того, что Вы не нафигачите горизонтальных связей между ними. В Вашем примере дочерний компонент может генерировать событие, главная форма обрабатывать его и создавать другой дочерний компонент. Тем самым никаких горизонтальных связей, никакого дублирования кода. И никаких контроллеров. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 14:19 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTE, то, что Вы воспользовались MVC, чтобы решить свои проблемы, не означает, что их нельзя решить иначе. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 14:21 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANA, Я ни в коем случае, не настаиваю, что MVC - панацея. Просто для создания масштабируемых систем, ничего лучше не придумали. Код: sql 1.
Это до тех пор, пока главная форма - одна. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 14:34 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTEЯ ни в коем случае, не настаиваю, что MVC - панацея. Просто для создания масштабируемых систем, ничего лучше не придумали. Если Вы про SOA системы, где есть front-end, back-end, public API, интеграция со сторонними сервисами, то это ой как сильно выходит за рамки топика. ALOTE Код: sql 1.
Это до тех пор, пока главная форма - одна. Пример desktop приложения с несколькими главными формами привести можете? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 15:01 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANAЕсли Вы про SOA системы, где есть front-end, back-end, public API, интеграция со сторонними сервисами, то это ой как сильно выходит за рамки топика. да нет, я про любые бизнес приложения. Пример desktop приложения с несколькими главными формами привести можете? "Главная форма" в данном случае, это не ГФ приложения, а форма имеющая подчиненные формы. Примеров, когда одна подчиненная форма вызывается из разных мест, навалом. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 15:06 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTEskyANAЕсли Вы про SOA системы, где есть front-end, back-end, public API, интеграция со сторонними сервисами, то это ой как сильно выходит за рамки топика.да нет, я про любые бизнес приложения. Пример desktop приложения с несколькими главными формами привести можете?"Главная форма" в данном случае, это не ГФ приложения, а форма имеющая подчиненные формы. Примеров, когда одна подчиненная форма вызывается из разных мест, навалом.И у Вас были проблемы с диспетчеризацией этих вызовов? И Вы её решили при помощи MVC? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 15:16 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANAИ у Вас были проблемы с диспетчеризацией этих вызовов? И Вы её решили при помощи MVC? Я ее решал разными способами. Но MVC, в долгосрочной перспективе, самый удобный вариант, позволяющий избежать дублирования кода. Хотя, с непривычки, может показаться, излишне громоздким. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 16:36 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
ALOTE, мне MVC не кажется излишне громоздким там, где я его использую. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 16:43 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
skyANAALOTE, мне MVC не кажется излишне громоздким там, где я его использую. Это замечательно ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 16:47 |
|
Доступ к компонентам главной формы с других форм
|
|||
---|---|---|---|
#18+
webber81, Создайте статический класс с полями ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2013, 18:55 |
|
|
start [/forum/topic.php?fid=20&msg=38294378&tid=1404498]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 151ms |
0 / 0 |