|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
Доброе время и с Наступающим всех! А кто подскажет, как правильно реализовать: есть куча форм, на них куча контролов. Некоторые методы данного класса по обработке этой кучи контролов одинаковы для всех форм - их можно вынести в отдельный класс и из того класса бомбить контролы - вопрос, как правильно в методы того отдельного класса передать ссылку на форму, в которой надо почикать контролы ??? Например this.pictureBox... - это обращение к картинке на данной форме - как реализовать аналог, только чтоб к определенному контролу на определенной форме стукануться из метода другого класса - то есть указать тому методу форму, по контролу которой стучать??? заранее спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2013, 16:05 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
методы вызываются из экземпляра класса, this, как передаваемый параметр - че-то не прокатывает / ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2013, 16:13 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
либо сделать публичные методы у нужной формы, и вызывать их где нужно. либо сделать модификаторы доступа у членов, скажем internal (неджедайский подход) С наступающим! ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2013, 16:35 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
Arm79либо сделать публичные методы у нужной формы, и вызывать их где нужно. либо сделать модификаторы доступа у членов, скажем internal (неджедайский подход) С наступающим! спасибо! немножко не то - вот чего я добиваюсь: в главном окне создаются новые окна: , например так: Код: c# 1. 2. 3. 4. 5.
а Jobs - наследник FadeForm (FadeForm - наследник Form) вот окно создано и появилось. В окне куча контролов. Как дорваться к этим контролам из другого класса, контролы все в Public. Само окно - Public. Наверно надо передать this в другой класс. И какого тогда типа в методе того другого класса объявлять параметр? вот, к примеру, какие окна могут быть: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
выделенные классы - все наследники FadeForm? который в свою очередь - наследник Form. Ясное дело, что при передаче параметра компилятор ругается на несоответствие типа - в это все и уперлось... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2014, 14:09 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
может в сторону делегатов покопать...? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2014, 14:22 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
В Delphi такой прием легко прокатывает - я создал отдельный юнит, в нем процедурку, у процедуры - параметр класса TForm и в эту процедуру передаю любую форму и получаю доступ к любому контролу на форме: тоже самое на сишарпе никак не прокатывает: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2014, 14:51 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
Galadriel75тоже самое на сишарпе никак не прокатывает Ерунда. Вместо TForm в шарпе Form. Тот же самый подход. Другое дело, что этот подход напрочь неправильный. Делаете интерфейс с общими методами, наследуете все ваши произвольные формы от него. Доступ к контролам на одной форме из другой - не есть джедайский поход ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2014, 15:07 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
Arm79Galadriel75тоже самое на сишарпе никак не прокатывает Ерунда. Вместо TForm в шарпе Form. Тот же самый подход. Другое дело, что этот подход напрочь неправильный. Делаете интерфейс с общими методами, наследуете все ваши произвольные формы от него. Доступ к контролам на одной форме из другой - не есть джедайский поход согласен со всем вышесказанным... как оказалось, сработало вот как: Код: c# 1.
то есть всего-то лишь надо было преобразовывать к классу FadeForm а вот сам метод из другого класса: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
лепил на скорую руку, мысля наследоваться из общей формы пришла уже позже, но уже нет времени все ломать и перекраивать... только там доступ к контролам на форме не из другой формы, а из класса, в котором лежит лавина общих методов, которые юзаются во всем проекте... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2014, 15:13 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
даже проще можно: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2014, 15:20 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
Топик можно закрывать! ... |
|||
:
Нравится:
Не нравится:
|
|||
02.01.2014, 15:21 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
Galadriel75даже проще можно: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
не джедайский подход, интерфейсы наше всё ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2014, 18:58 |
|
C# - обработка контролов текущей формы методами из другого класса
|
|||
---|---|---|---|
#18+
pationGaladriel75даже проще можно: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
не джедайский подход, интерфейсы наше всё это не самое главное в нашем бытии ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2014, 14:44 |
|
|
start [/forum/topic.php?fid=20&fpage=131&tid=1403404]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
others: | 310ms |
total: | 449ms |
0 / 0 |