|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
У грида через BindingSource прицеплен List<T>. Надо по таймеру обновлять данные. Проблема: не получается. Что пробовал: 1. grid.Refresh() - данные не меняются. 2. grid.DataSource=null; gridDataSource = bindingSource_ - работает, но при нажатии на строку падает IndexOutOfRangeException То ли я туплю, то ли... Помогите. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 13:17 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Pallaris, bindingSource.DataSource = GetData(); ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 13:26 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
pation, не понял. GetData() должен вернуть мой List<>? Но в BindingSource.DataSource и так уже он лежит. Вот тестовый пример. В верхний грид вводятся данные и они должны отобразиться в нижнем с интервалом 5 сек. Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 13:33 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Обана, помогло! Код: c# 1. 2.
Спасибо, pation!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 13:44 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Удивляет, что для корректного отображения в Гриде нужно перебиндивать данные. Оно так и задумывалось? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 14:17 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
PallarisУдивляет, что для корректного отображения в Гриде нужно перебиндивать данные. Оно так и задумывалось?Ну дык у тебя тогда должны быть события в источнике данных по типу nameChanged(object sender, EventArgs e) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 14:20 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
fortibransa, допустим, я подпишу Грид на это событие. Что дальше, что в этом обработчике должно быть написано, чтобы Грид перерисовался с правильными данными? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 14:26 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Pallarisfortibransa, допустим, я подпишу Грид на это событие. Что дальше, что в этом обработчике должно быть написано, чтобы Грид перерисовался с правильными данными?Да грид не надо подписывать на это, нужно чтоб были такие события у источника данных, а сам источник был прибинден к гриду. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 14:34 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Как-то так Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 14:51 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
А вот на добавление/удаление см. сам. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 14:53 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
fortibransa, ты ж так и не подписал никого на это событие. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:01 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
В любом случае, добавление и удаление уже ж нужно навешивать на BindingSource, а не на сам класс. Плюс прописать вызов событий для каждого property у класса. Не дофига ли это получается, чтобы просто осуществить обновление Грида по актуальным данным, которые кстати ему доступны в любой момент? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:10 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Pallarisfortibransa, ты ж так и не подписал никого на это событие.Ты попробуй, ты не поверишь ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:11 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
fortibransaТы попробуй, ты не поверишь Что должно быть в этом обработчике? Вот это: Код: c# 1. 2.
? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:14 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
fortibransaТы попробуй, ты не поверишь Скопипастил твой SomeClass, естественно нифига не обновляется в гриде ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:18 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
PallarisfortibransaТы попробуй, ты не поверишь Скопипастил твой SomeClass, естественно нифига не обновляется в гриде Код: c# 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:34 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
fortibransa, вообще говоря, для отображения изменений в полях name и description уже существующих записей на момент прибинживания твоих обработчиков (ни к чему не прицепленных кстати) не нужно - оно все-таки само происходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:44 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Pallarisfortibransa, вообще говоря, для отображения изменений в полях name и description уже существующих записей на момент прибинживания твоих обработчиков (ни к чему не прицепленных кстати) не нужно - оно все-таки само происходит.Ты разницу посмотри, при валидации (на другую клетку уйти) в 1 таблице изм сразу появляются во 2-й. Для добавление удаления, можно использовать не List а BindingList<SomeClass> list_=new BindingList<SomeClass>(); ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:55 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
А лучше вообще ObservableCollection<T> ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:56 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
fortibransaТы разницу посмотри, при валидации (на другую клетку уйти) в 1 таблице изм сразу появляются во 2-й.; Абсолютно то же самое получается (проверил), если убрать твои обработчики - они вообще не нужны. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 15:58 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
PallarisfortibransaТы разницу посмотри, при валидации (на другую клетку уйти) в 1 таблице изм сразу появляются во 2-й.; Абсолютно то же самое получается (проверил), если убрать твои обработчики - они вообще не нужны.Тут да, пардон List<T>, это уже сделал. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 16:09 |
|
DataGridView обновить содержимое
|
|||
---|---|---|---|
#18+
Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2013, 17:02 |
|
|
start [/forum/topic.php?fid=20&msg=38413162&tid=1403939]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 162ms |
0 / 0 |