|
Динамические контролы
|
|||
---|---|---|---|
#18+
Добрый день всем! Мне никак не удается решить вопрос об управлении динамическими контролами созданными спонтанно. Ситуация такая. Хочу приложение по работе с базой реализовать в одной форме. Форма должна выглядеть как managment studio Слева treeview Справа tabcontrol без закладок В treeview клик - в tabcontrol появляется закладка с заголовком, в закладка datagrid c данными из sql view в заголовке закладки не нашел возможности создать крестик - закрытие вкладки. При выборе из контекстного меню (новая запись, редактирование) - datagrid поджимается вверх, а снизу добавляется панель с элементами для полей таблицы и кнопками отмена или сохранить. После нажатия кнопок отправляется команда на сервер и панель с элементами для полей таблицы удаляется из коллекции элементов формы, datagrid раздвигается во всю вкладку. Если в панели с элементами в одно из полей надо вписать значение, которое надо выбрать из таблицы справочника, то добавляется новая вкладка с datagrid во всю вкладку. При этом переключение в предыдущую вкладку родителя невозможно, как будто последняя вкладка модальная. После выбора из контекстного меню "Выбрать" на соответствующей строке. Модальная вкладка с ее datagrid убирается из коллекции элементов формы и значение ключевого поля передается в соответствующее поле панели с элементами на предыдущей вкладке. И такая иерархия модальных вкладок может расти N - раз в зависимости от структуры базы данных. Моя форма - это один класс. В ней методы. При описании в методе сценария рождения динамического контрола, сослаться на него в другом методе не получается. Если элемент на форме задан с самого начала в конструкторе, то такой проблемы нет, в любом методе можно обращаться к существующему котролу, изменяя его свойства. Как решается данная проблема? Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2014, 10:12 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
DraginsvФорма должна выглядеть как managment studio http://avalondock.codeplex.com/ Draginsvв заголовке закладки не нашел возможности создать крестик - закрытие вкладки http://geekswithblogs.net/kobush/archive/2007/04/08/CloseableTabItem.aspx или такой вариант http://appfx.codeplex.com/ в общем, все велосипеды изобретены до нас в инете ещё много чего можно нарыть по заданным вопросам ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2014, 14:27 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
ШайтанDraginsvв заголовке закладки не нашел возможности создать крестик - закрытие вкладки http://geekswithblogs.net/kobush/archive/2007/04/08/CloseableTabItem.aspx или такой вариант http://appfx.codeplex.com/ Можно даже классику почитать. )) (Крутим вниз до картинок с закрываемыми табами.) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2014, 05:59 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
Тоже нашел содержательную ссылку http://www.essentialobjects.com/doc/5/controls/tabcontrol/close_new_button.aspx Но все описано через XAML DataTemlate. Нашел перехват объекта формы через аргумент события типа эксперимента Код: c# 1. 2. 3. 4. 5. 6.
XAML, HTML еще не вклинился глубоко хотя читал HTML5, JQUERY, AJAX. Но от кода VBA к C# как то полегче перейти. Надоело в акцесе плодить формы и контролы, хочется универсальности типа кода-визарда. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2014, 14:25 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
Пробую новый класс из примера по ссылке http://www.dotnetspark.com/kb/1867-create-tab-control-wpf.aspx Код: c# 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.
использую его Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
у второго табитема нет заголовка. Что не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2014, 16:41 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
DraginsvПробую новый класс из примера по ссылке http://www.dotnetspark.com/kb/1867-create-tab-control-wpf.aspx Код: c# 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.
использую его Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
у второго табитема нет заголовка. Что не так? Какой-то индусский лапшекод. Я же вам норм ссылку привёл - чего вы издеваетесь над WPF? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2014, 16:53 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
user7320 это всего лишь эксперименты над объектами для осознания и визуализации результатов выражений, т.е. понять как объекты работают. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2014, 11:10 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
Draginsvuser7320 это всего лишь эксперименты над объектами для осознания и визуализации результатов выражений, т.е. понять как объекты работают. автору второго табитема нет заголовка. Что-то мне кажется, что если бы вы использовали нормальные привязки, а не какую-то самописную лапшу, то заголовок бы был. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2014, 12:14 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
Это не мой код, он из нета. Насчет заголовка, мне кажется это связано со стилем в xaml. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2014, 13:28 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
Я вот не понимаю этого задания свойств в сишарп-коде. Вы думаете, что если "динамические, созданные спонтанно", то это обязательно в коде, а не разметке? Шаблоны данных, стили и некоторые другие вещи тоже применяются "динамически" и "спонтанно", если что, а описывать их лучше всего в разметке. Отучайтесь от Win Forms. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2014, 14:15 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
user7320 Я понял Ваш намек. Привычка вещь сильная. Надо изучать разметку. Читал тот же HTML5. Теория без практики ноль. Тоже самое и с XAML. Чтобы понять, надо опробовать, почувствовать возможности, нужно время. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2014, 16:41 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
Накопал очень простой способ с кнопкой закрытия, но опять проблемка Код: xml 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.
не могу перейти к от кнопки к tabitem с помощью sender Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
пробовал через parent выхожу на null ... |
|||
:
Нравится:
Не нравится:
|
|||
29.04.2014, 12:19 |
|
Динамические контролы
|
|||
---|---|---|---|
#18+
Удалось решить Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
через рекурсию по визуальному дереву от сендера до нужного типа ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2014, 15:58 |
|
|
start [/forum/topic.php?fid=21&tid=1441132]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
134ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 9ms |
total: | 229ms |
0 / 0 |