|
WPF присвоить ItemsSource из метода
|
|||
---|---|---|---|
#18+
Всем привет! Не присваивается через метод ItemsSource грида. Способ не самый лучший, согласен. Но тогда каким способом можно вернуть "adapter.Fill(ds)", чтобы присвоить его GridTren.ItemsSource результатом метода? Спасибо. Код: 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.
Код: xml 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2020, 02:42 |
|
WPF присвоить ItemsSource из метода
|
|||
---|---|---|---|
#18+
Евгений Стронг Не присваивается через метод ItemsSource грида. Код: c# 1. 2. 3. 4.
Судя по коду. Вы создали НОВЫЙ экземпляр MainWindow. Присваиваете значений свойству его элемента GridTren. Но я нигде не вижу как вы ОТОБРАЖАЕТЕ это Окно. Скорее всего оно у вас отображается дефолтно из App. НО! App создаёт свой экземпляр MainWindow и отображает свой экземпляр, а не ваш. Евгений Стронг Способ не самый лучший, согласен. Но тогда каким способом можно вернуть "adapter.Fill(ds)", чтобы присвоить его GridTren.ItemsSource результатом метода? В таком как у вас случае однозначно должен реализовываться MVVM. В самом-самом-самом простом виде это так Model Код: 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.
ViewModel Код: 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.
XAML и CB (Code Behind) Окна Код: 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.
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Базовые классы для реализаций INPC и ICommand. Обычно их записываю в библиотеку и подключают к нужным проектам Код: 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.
Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2020, 11:59 |
|
WPF присвоить ItemsSource из метода
|
|||
---|---|---|---|
#18+
Eld Hasp, Спасибо большое за Ваш труд и подробный ответ с примером! У меня была цель написать более лаконичный код. Все запросы к БД вынесены в отдельный класc SQL. А вот уже с самого приложения я просто дергаю методы и присваиваю им результаты их выполнения. Просто что там были примеры с возвратом одного значения. И вот дошел до DataGrid и хотел сделать аналогично. То есть по кнопке в MainWindow я хотел сделать следующее: Код: c# 1.
Получилось бы, что метод TrenSelect вернет набор данных в виде таблицы, а её бы скушал Grid. Но видимо не всё так просто. А вот от паттерна MVVM хотелось держать по дальше из-за сложности реализации, так как проект совсем не большой. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2020, 12:21 |
|
WPF присвоить ItemsSource из метода
|
|||
---|---|---|---|
#18+
Евгений Стронг А вот от паттерна MVVM хотелось держать по дальше из-за сложности реализации, так как проект совсем не большой. Это концептуальная ошибка! Если вы собираетесь развиваться как программист, чтобы со временем писать более-менее крупные WPF Решения (по сути любые кроме самых мелких), то без MVVM - это не выйдет. MVVM изначально специально создавался как инструмент реализации View в паттерне MVVM. В WPF есть очень много особенностей которые реализовать вне MVVM много сложнее. А как вы собираетесь осваивать MVVM на больших Решениях? В таких Решениях и своих проблем, заморочек хватает. Осваивать MVVM надо, именно, на маленьких Решениях. Я бы посоветовал вам, на первых порах, с целью нормально изучения, в WPF проектах, вообще, не использовать CB окна. В нём ничего не должно быть кроме Код: c# 1. 2. 3. 4.
Даже инициализация Окна, его показ, создание Model и ViewModel должны происходить в CB App. Такой подход позволит вам выявить пробелы в своих знаниях и изучить, соответствующие, разделы. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2020, 12:40 |
|
WPF присвоить ItemsSource из метода
|
|||
---|---|---|---|
#18+
Используйте DataTable, DataGrid имеет особые отношения с этим типом. Изучите MVVM это то, что должен знать каждый программист связанный с WPF, без этого шаблона магия не работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2020, 15:16 |
|
|
start [/forum/topic.php?fid=21&tid=1440283]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 132ms |
0 / 0 |