Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
В DataGrid стандартно строка удаляется нажатим клавиши Del. Есть необходимость запрашивать подтверждение пользователя перед удалением. Сам DataGrid евент об удалении не выдаёт, в связанном DataTable есть RowDeleting но там нельзя отменить удаление. Сделал через евент PreviewKeyDown таким образом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Работает, но имхо должно быть более нормальное решение. Кто что скажет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 16:39 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
Как вариант: 1. Изначально запомнить DataTable в члене модели / класса формы 2. Если удаление было отменено - восстановиться из сохраненной DataTable ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 17:13 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
Так помоему ещё извратнее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 17:15 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
Извратнее юзать DataTable, вместо нормальных типизированных обсервейбл коллекций или списков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 17:38 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
МСУИзвратнее юзать DataTable, вместо нормальных типизированных обсервейбл коллекций или списков.было бы проще решить задачу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 17:56 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
Вестникбыло бы проще решить задачу? Да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 18:18 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
а подробностей не будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 18:22 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
На досуге напишу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 18:29 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
MainWindow.xaml Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. MainWindow.cs Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. MainWindowModel.cs Код: 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. Всё. И никаких телодвижений не нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 19:49 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
так... э.... DataGrid_PreviewKeyDown - остался. не вижу упрощения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 19:56 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
Сорри, недописал прошлый код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Код: 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. Вестниктак... э.... DataGrid_PreviewKeyDown - остался. не вижу упрощения Ну и что? Если не нравится PreviewKeyDown, пусть команды юзает напрямую из XAML. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:05 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
в код надо будет вникнуть, с понятием модель в впф я не знаком. МСУ, а вы принципиально настроены против DataTable ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:15 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
МСУЕсли не нравится PreviewKeyDown, пусть команды юзает напрямую из XAML. мне как раз код нравится больше чем XAML :) но вобще-то изначально вопрос был вызван удивлением, что а датагриде есть например BeginningEdit, который можно отменить Cancel'ом, но нету BeginningDelete ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:21 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
zvb73в код надо будет вникнуть, с понятием модель в впф я не знаком. Вникайте. Если хотите стопроцентной декларативности - юзайте паттерн MVVM. Но лично мне он не по душе - мне нравится модель максимально прорисовывать в коде, но при представлении иметь "клики" с вывовом методов модели. zvb73МСУ, а вы принципиально настроены против DataTable ? Лишь в крайних случаях, когда их не избежать. Например, поставка данных из стороннего сервиса, структура заранее неизвестна. Ну ё-маё, 21 век, а Вы всё с тормозными дататэйблами ковыряетесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:23 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
zvb73но вобще-то изначально вопрос был вызван удивлением, что а датагриде есть например BeginningEdit, который можно отменить Cancel'ом, но нету BeginningDelete Почитайте это: Overview of the editing features in the WPF DataGrid . Как раз там о командах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:24 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
МСУzvb73МСУ, а вы принципиально настроены против DataTable ? Лишь в крайних случаях, когда их не избежать. Например, поставка данных из стороннего сервиса, структура заранее неизвестна. Ну ё-маё, 21 век, а Вы всё с тормозными дататэйблами ковыряетесь. Ну вроде где-то так оно и есть - надо отрисовывать таблички из ХМЛ не особо вникая в их содержимое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:27 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
zvb73с понятием модель в впф я не знаком Уточню. Речь о "модели представления". То есть, есть представление (xaml), есть его модель (то, что Вы видели в MainWindowModel.cs) и есть просто модель (класс User в данном случае). Почитайте это: Приложения WPF с шаблоном проектирования модель-представление-модель представления , если хотите вникнуть. zvb73Ну вроде где-то так оно и есть - надо отрисовывать таблички из ХМЛ не особо вникая в их содержимое Типизации не поддаётся? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:29 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
МСУТипизации не поддаётся? типизированные конечно, причём это даже экспорт из какой-то БД, но зачем вникать в их содержимое, если нет такой необходимости ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:33 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
Ладно, уговорили :) Пишите тоже самое на таблицах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2010, 20:44 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
МСУ.... юзайте паттерн MVVM буэээээ.... МСУлично мне он не по душе плюсстопитьсот :) МСУzvb73МСУ, а вы принципиально настроены против DataTable ? Лишь в крайних случаях, когда их не избежать. минусстокаже пока вы в своём Виларибо пропишете на коллекциях ту же версионность строк, ребятя из Вилабаджо будут пляски с девушками неделю плясать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2010, 15:40 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
MCУ, "член главной модели" c полным копированием коллекции - знатные велосипеды. Даже DataTable перед этим не идут ни в какое сравнение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2010, 20:09 |
|
||
|
Удаление строки в WPF DataGrid
|
|||
|---|---|---|---|
|
#18+
zvb73В DataGrid стандартно строка удаляется нажатим клавиши Del. Есть необходимость запрашивать подтверждение пользователя перед удалением. Сам DataGrid евент об удалении не выдаёт, в связанном DataTable есть RowDeleting но там нельзя отменить удаление. Сделал через евент PreviewKeyDown таким образом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Работает, но имхо должно быть более нормальное решение. Кто что скажет? Для этого можно создать behaivor или расширить datagrid, если в нем нет подобного функционала. Команды в этом тривиальном случае - это применение шаблона совершенно не в тему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2010, 20:19 |
|
||
|
|

start [/forum/topic.php?fid=21&fpage=60&tid=1442619]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
24ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
| others: | 223ms |
| total: | 356ms |

| 0 / 0 |
