|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Доброго времени суток, уважаемые форумчане! Подскажите, как наиболее красиво решить такую задачу. Нужно привязать к элементу управления (допустим, TextBox) поле из таблицы БД (SQL Server) но только не для 1, а для несколько записей. То есть, программа выбирает n- записей по какому-либо признаку. Если значение в привязываемом поле у всех записей одинаковое, то в TextBox отображается это значение. Если хотя бы у одной записи оно отличается, то в TextBox отображается какие-нибудь символы (например, <...>). Соответственно, при внесении изменений в это TextBox значение этого поля должно изменяться для всех записей. Хотелось узнать красивый способ для решения этой задачи. Наверняка, это распространенная задача (я часто встречал такие элементы в разном софте). Можно ли её решить с помощью Entity Framework? Хотелось бы получить подсказки именно по WPF, но для WinForms тоже буду рад. Пишу на C#. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 18:17 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Свой ValueConverter, который выполняет агрегацию любым удобным способом. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 19:30 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
fgarfieldНаверняка, это распространенная задача (я часто встречал такие элементы в разном софте). Не распространенная. В гугле искали? Скрин сюда с гугла можем? Если это comboBox выпадающий список то поищите на эти слова. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 19:38 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
fgarfield, примерно так: Код: 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. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178.
Код: 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. 38. 39. 40. 41. 42. 43. 44. 45.
Код: 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. 34. 35. 36. 37. 38. 39. 40. 41.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 20:44 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Roman Mejtes, Я фигею. Это столько кода для контрола? Каждый раз пишут? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 20:54 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Petro123, очевидно, что это пример в который входит тестовая модель, всякие вспомогательные классы и прочее, что по факту уже будет, если работаешь с WPF постоянно, все это я из пальца только что высосал, ActionCommand или RelayCommand и связывание событий лучше взять из существующих сборок для шаблона MVVM, типа базовых моделей, команд и много другого. Да и пример кривенький ) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 21:02 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
fgarfieldно для WinForms тоже буду рад.вот это имхо странно. Под винФормс все стандартное в панели компонентов находится. Под wpf совершенно другой подход. Как тогда вам все равно на какой технологии решение? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 21:03 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Roman Mejtes, Спасибо. Ок. Честно, я пока не врубился что вообще надо))) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 21:05 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Petro123, вы сильно преувеличивайте, в реальных условиях в WPF У меня есть готовые комбики с мультиселектом и деревом, я их подключаю и делаю таким внешний вид, который подходит для текущего приложения. Конечно, готового решения нет, если самому делать лень, покупайте ) не помню, чтоб в WF был комбик аналогичный тому, про который я упомянул выше, но не уверен, не работаю с WF ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 21:07 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Roman Mejtes, Мне интересен сабж т.к. у нас библиотека телерик для WPF. И придётся скоро выбирать между вашим методом(своя lib) и готовым там. Для этого нужно знать: "А что нужно ТСу"???? - что за аналогичный комбик? Мультиселект? Дерево тут причём? ... Т.е. автор ищет комбоБокс с мультиселектом? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 21:54 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Автор внятно сказал, что хочет ввести значение в текстбокс и оно должно записаться в поле во всех строках некой выборки. Причем тут мультиселект? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 22:05 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Shocker.ProАвтор внятно сказал, что хочет ввести значение в текстбокс и оно должно записаться в поле во всех строках некой выборки. Причем тут мультиселект? я внятно спрашиваю: - это стандартный подход? Контрол? Если да, то скрин плиз. А накодировать я могу всё что угодно под заказ. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 22:26 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Shocker.ProСвой ValueConverter, который выполняет агрегацию любым удобным способом. Вы имеете ввиду IValueConverter, метод ConvertBack ? Насколько я понял, этот метод использует 1 параметр, а вопрос именно в том, как привязать/применить это одно значение к нескольким записям Petro123fgarfieldно для WinForms тоже буду рад.вот это имхо странно. Под винФормс все стандартное в панели компонентов находится. Под wpf совершенно другой подход. Как тогда вам все равно на какой технологии решение? Я совсем новичок в WPF, в то время как в WinForms более менее ориентируюсь. Хотелось начать разработку нового приложения именно в WPF. На я имел ввиду, что если кто-то поможет с WinForms, возможно, я подумаю, чтобы не выпендриваться и сделать его в старой доброй WinForms.:) Roman Mejtes, Спасибо, постараюсь попробовать разобраться в Вашем коде... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 22:42 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
fgarfieldВы имеете ввиду IValueConverter, метод ConvertBack ? Насколько я понял, этот метод использует 1 параметр, а вопрос именно в том, как привязать/применить это одно значение к нескольким записямЯ имею ввиду конвертор в обе стороны. А привязываться надо не к каждой отдельной записи, а к свойству, представляющему набор записей. Впрочем, курите код Романа, там просто само свойство модели обеспечивает нужный функционал без конвертера. Романпрокомментируешь как-нить подход 21241155 ? Может я не туда поехал? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 22:56 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
fgarfieldЯ совсем новичок в WPF, в то время как в WinForms более менее ориентируюсь. Хотелось начать разработку нового приложения именно в WPF. На я имел ввиду, что если кто-то поможет с WinForms, возможно, я подумаю, чтобы не выпендриваться и сделать его в старой доброй WinForms.:) Я тоже в десктопе и бд ориентируюсь. Трудно скрин привести? автор Наверняка, это распространенная задача (я часто встречал такие элементы в разном софте). Где они? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2018, 23:09 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Petro123Трудно скрин привести? Ну вот, например, панель свойств в любом CAD-е. На скрине Панель свойств Altium Designer. Внизу написано, что выбрано 53 элемента. Значение параметра Layer у них всех одинаковое, а например, параметр Х1 отличается хотя бы у одного из них, поэтому там нет значения. Если ввести в Х1 значение, оно применится ко всем 53 элементам. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2018, 10:08 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
fgarfield, Теперь понятно) Property Grid или вертикальный грид такие штуки называются. Да, если готового типа телерика нет, то руками много кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2018, 10:43 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Petro123, платить за такую фигню? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2018, 15:17 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Petro123, Спасибо за наводку! Попробую изучить ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2018, 19:01 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Roman Mejtes, Виртуал грид руками, докирование руками, вертикальный руками... Работодатель решил заплатить). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2018, 21:44 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Petro123Roman Mejtes, Виртуал грид руками, докирование руками, вертикальный руками... Работодатель решил заплатить). тут все делается через стандартную панель виртуализации, нужно просто наделать кучу шаблонов для разных типов данных, что самое приятное в WPF, это то, что добавлять новые будет на много проще. докирование конкретно к контролу отношение не имеет, за это отвечают контейнеры , что такое вертикальный я не понял, скролинг? вроде всё это идет из коробки. все что нужно сделать, это шаблон и регулировку ширины колонки руками + иерархию или группы, сортировка, фильтрация все есть. думаю легко сделать дня за 3 основательно и не платить деньги =) уже делал их и не 1 раз, там всё банально и просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2018, 22:04 |
|
1 элемент управления для нескольких строк
|
|||
---|---|---|---|
#18+
Roman Mejtesтут все делается через стандартную панель виртуализации, нужно просто наделать кучу шаблонов для разных типов данных, что самое приятное в WPF, это то, что добавлять новые будет на много проще. Не могу привыкнуть. Мне как то больше по душе понятие компонент. Если дельфи, то это пакет файл dpk. Если шарп, то это dll и визуальный контрол в палитре. Тут в wpf с понятием шаблон как то разбросано всё. Но это имхо. Могу ошибаться. ... Докирование это в телерике бросить контрол типа панели материнской куда и будет все прилипать докироваться. ... Вертикальный это этот сабж. Разный тип не в колонках, а строках. ... Да. Мне интересен ваш опыт. Видно что вы практик. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2018, 07:28 |
|
|
start [/forum/topic.php?fid=21&msg=39612864&tid=1440441]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
158ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 274ms |
total: | 537ms |
0 / 0 |