Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
помогите, весь день уже парюсь :(( проанализировал все топики по теме на этом форуме, MSDN и прочее, но ниче не получается :( суть: есть 2 таблицы Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. далее - на форме в гриде выводится результат селекта: Код: plaintext 1. 2. 3. Код: plaintext 1. далее, при навигации по гриду, в комбобоксе должно меняться значение, в зависимости от того, какой WareTypeName в гриде для этой записи, соответсвенно чтобы такой же становился в комбобоксе. при этом чтобы при раскрытии списка комбобокса были доступны для выбора любые значания из таблицы WareType. При изменении значения в комбобоксе менять значение в гриде не надо (пока). как это оформить сделать чисто программно и отдельно чисто визуально ( в 2-х вариантах ) ? т.е. интересует как связать DBGRID и COMBOBOX. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 15:06 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Как вариант: ReinRaus далее, при навигации по гриду, в комбобоксе должно меняться значение, в зависимости от того, какой WareTypeName в гриде для этой записи, соответсвенно чтобы такой же становился в комбобоксе. Подписаться на PositionChanged CurrencyManager В обработке PositionChanged по текущему значению находите и выставляете Position у комбобокса. Если у вас есть код биндинга DataGrid и ComboBox то привидите его, от него можно "плясать" конкретно. Если нет, то соответствующий код придется написать - мне, вам, или кому то еще :-) ReinRaus как это оформить сделать чисто программно и отдельно чисто визуально ( в 2-х вариантах ) ? т.е. интересует как связать DBGRID и COMBOBOX. Визуально - имеете ввиду при помощи wizard ов? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 15:48 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Sa ReinRaus как это оформить сделать чисто программно и отдельно чисто визуально ( в 2-х вариантах ) ? т.е. интересует как связать DBGRID и COMBOBOX. Визуально - имеете ввиду при помощи wizard ов? нет, при помощи мышки и окошка Properties ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 15:55 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
2 ReinRaus посмотри еще в MSDN статью: Creating a Lookup Table for a Windows Forms ComboBox, ListBox, or CheckedListBox Control ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:00 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Sa Если у вас есть код биндинга DataGrid и ComboBox то привидите его, от него можно "плясать" конкретно. Если нет, то соответствующий код придется написать - мне, вам, или кому то еще :-) Код: plaintext 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. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:01 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
кузя2 ReinRaus посмотри еще в MSDN статью: Creating a Lookup Table for a Windows Forms ComboBox, ListBox, or CheckedListBox Control смотрел но не помогает т.е. в комбобоксе все нормально, инфа вся как надо из справочника отображается, но связи с гридом не наблюдается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:03 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
у комбо и грида должен быть один и тот же DataSource ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:05 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
SaКак вариант: Подписаться на PositionChanged CurrencyManager это что такое, событие грида или что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:07 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
ReinRaus нет, при помощи мышки и окошка Properties при помощи стандартных компонентов нет кузя посмотри еще в MSDN статью: Creating a Lookup Table for a Windows Forms ComboBox, ListBox, or CheckedListBox Control + при помощи DataRelation можно обойтись и без INNER JOIN в запросе = как вариант это приемлемый вариант, но полюбому придется использовать DataSet и DataRelation . Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:08 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
кузяу комбо и грида должен быть один и тот же DataSource и какой же? тот что берет данные для ware или wareType? если 1-й вариант, то не будет всех возможных значений wareType в комбобоксе. если 2-й, то в гриде будет не то что нам надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:10 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
sa при помощи DataRelation можно обойтись и без INNER JOIN в запросе меня не пугет inner join автор но полюбому придется использовать DataSet и DataRelation и какиом образом их нужно использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:13 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
ReinRaus смотрел но не помогает т.е. в комбобоксе все нормально, инфа вся как надо из справочника отображается, но связи с гридом не наблюдается DataRelation не забыли? Сейчас нет времени :-( , сегодня поздно вечером (GMT + 5:00) выложу два варианта с использованием DataRelation и без. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:13 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Да, если это еще будет актуально к тому времени :-) Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:15 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
2 ReinRaus DataSource, в твоем случае, д.б. DataSet11 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:16 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
кузя2 ReinRaus DataSource, в твоем случае, д.б. DataSet11 да, я в курсе.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:19 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Sa Сейчас нет времени :-( , сегодня поздно вечером (GMT + 5:00) выложу два варианта с использованием DataRelation и без. было бы круто.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:20 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Sa DataRelation не забыли? а зечем он нужен вообще? разве этого не достаточно: create table Ware ( WareID int constraint pk_Ware_WareID primary key , WareName varchar(200) not null , WareTypeID int constraint fk_Ware_WareTypeID references WareType ( WareTypeID ) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:25 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
связка в твоем случае д.б. примерно такой: Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 16:38 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
ReinRaus Sa DataRelation не забыли? а зечем он нужен вообще? разве этого не достаточно: create table Ware ( WareID int constraint pk_Ware_WareID primary key , WareName varchar(200) not null , WareTypeID int constraint fk_Ware_WareTypeID references WareType ( WareTypeID ) Наличие FK в БД не обозначает, что DataSet будет автоматически иметь этот constraint. Для подобных случаев DataRelation и удобно использовать. Хотя основное предназначение DataRelation , в коде который я выкладываю, это использование его для создания вычисляемого столбца, см. метод CreateExpressionBasedColumn() Второй представленный вариант - без использования DataSet, с INNER JOIN и пока полнее решает изначально поставленную задачу. P.S. чтобы пошел пример поменяйте CONNECTIONSTRING P.S.S. Да это не единственные варианты, ничего вам не мешает сделать binding к SelectedValue во втором варианте, или отказаться от ExpressionBasedColumn в пользу INNER JOIN в первом, использовать типизированный DataSet and etc.... Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 07:17 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Form1.cs Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 07:23 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
Sa - спасибо! заработало! буду разбираться.. только я немного в шоке вот от этого: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. т.е. когда делаем клиент-серверное приложение в C#, надо таблицы вместе с констрэйнтами создавать в 2-х местах : на сервере и в клиенете? а индексы, процедуры, триггеры- тоже надо будет дублировать в клиентской части? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 12:16 |
|
||
|
помогите разобраться с Grid + Combo
|
|||
|---|---|---|---|
|
#18+
ReinRaus т.е. когда делаем клиент-серверное приложение в C#, надо таблицы вместе с констрэйнтами создавать в 2-х местах : на сервере и в клиенете? а индексы, процедуры, триггеры- тоже надо будет дублировать в клиентской части? :) если очень хочется :-) Различные проверки, через Constraint, DataRelation в DataSet сообщат вам о нарушении целостности уже заранее, а не во время попытки сброса неверных данных в БД, особенно это полезно когда соединение с БД дорого стоит. Также различные каскадных изменения в клиентской части тоже гарантируют целостность мини-локальной-копии-вашей-базы данных под названием DataSet. НО!!!!! в любом подходе есть плюсы и минусы, разработчику приходится балансировать, а главное выполнять поставленную задачу. Какая задача у вас я не знаю. Чем больше классов, тем больше памяти требуется приложению, в вашем случае, мне пока по душе Variant 2 Как правило я предпочитаю либо typed dataset , либо вручную создаю схему, например как здесь, как минимум не тратится время на считывание метаданных!!!!!! (это большой плюс), а также о том, что схема изменилась я узнаю уже на Fill , см MissingSchemaAction . P.S. Кстати полезно посмотреть что же представляет из себя типизированный DataSet , для этого в SolutionExplorer в самом верху нажмите кнопку "Show All Files", теперь будет виден скрытый по умолчанию TypedDataSetName.cs файл , где TypedDataSetName - имя вашего типизированного DataSet. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 12:55 |
|
||
|
|

start [/forum/topic.php?fid=20&fpage=973&tid=1437045]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
27ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
70ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 345ms |

| 0 / 0 |
