|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Добрый вечер, уважаемые! Подскажите пожалуйста, как можно сделать поле счетчик в DataGrid. Который бы тупо нумеровал записи, начиная с 1. При удалении записи - пересчитывался бы без образовавшейся "дырки". Я так полагаю нужно написать выражение в binding поля, но как его составить правильно для такого случая? Благодарю. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2020, 22:22 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Евгений Стронг, сегодня, 22:22 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22075178][22075178] >Подскажите пожалуйста, как можно сделать … <Можно так - поместите информацию в List и привяжите List к DataGrid: dataGrid1.DataSource = list; ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2020, 23:28 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Индекс элемента в DataGrid нужно вычислять по индексу контейнера, а не самого элемента Модель представления, просто предоставляет список объектов Person: Код: 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.
Конвертер, в качестве параметров передается объект DataGrid и элемент списка Person (или другие NewPlaceHolder, для примера), определяется контейнер элемента (DataGridRow) и её индекс: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Представление, в ресурсах переопределен шаблон заголовка строки DataGrid'а, можно это делать как угодно. Тут есть 1 лайфхак, в мультибиндинге в конвертер передается ожидаемый объект списка и датагрид, но еще передается количество элементов в представлении коллекции, как только добавляется элемент или удаляется из коллекции он изменяется и это приводит к обновлению биндинга и обновлению значения, без этого работать нормально не будет. Так же нужно выключить тип виртуализации Recycled и включить Standard, иначе так же работать будет криво. Код: 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.
всякие проверки в код не включаю, так как делал на коленке ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2020, 00:49 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Roman Mejtes, Мама дорогая. Это вот только нужно всего, чтобы тупо отображался порядковый номер строки? Жесть... Я лучше в хранимке в результатирующий набор добавлю поле, в котором циклом буду проставлять порядок. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2020, 18:27 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Roman Mejtes, Нашел такое вот решение: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
WPF Код: xml 1. 2. 3.
Всё срабатывает, но почему нумерация сбивается, совершенно не понятно... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2020, 20:30 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Потому что виртуализация и переиспользование контейнера. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2020, 20:48 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Потому что виртуализация и переиспользование контейнера. Круто конечно. Но прозвучало честно говоря, как заклинание. Можно немного подробнее и есть ли решение? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2020, 21:05 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Можно немного подробнее https://metanit.com/sharp/wpf/14.5.php Евгений Стронг есть ли решение? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2020, 23:58 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Shocker.Pro, вчера, 23:58 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22075858][22075858] >я бы делал нумерацию строк на уровне модели, то бишь источника данных < так оно и есть, но не понятен смысл нумерации, что она даёт, изменил сортировку - и поплыла нумерация ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 00:47 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев но не понятен смысл нумерации, что она даёт, изменил сортировку - и поплыла нумерация Иногда полезно вникать в код, приведённый выше. У того решения, которое привёл Роман, нумерация при сортировке остаётся неизменной. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 04:22 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны ВМоисеев но не понятен смысл нумерации, что она даёт, изменил сортировку - и поплыла нумерация Иногда полезно вникать в код, приведённый выше. У того решения, которое привёл Роман, нумерация при сортировке остаётся неизменной. Я написал про то, что как сложно оно реализуется. Такой достаточно стандартный функционал, можно было и добавить как стандартную фичу в DataGrid. Вроде преимущества WPF, но в то же время по сравнению с вин контролами - достаточно напутано. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 12:43 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Сон Веры Павловны, сегодня, 04:22 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22075896][22075896] >Иногда полезно вникать в код… < Согласен. Но не менее полезно знать для чего это нужно. Что нужно задавшему вопрос? Он хочет пронумеровать строки грида, или строки выборки? И что это дает? Если строки грида, то при сортировке закрепление номера за строкой выборки изменится. Если нумеруются строки выборки, то при сортировке нарушится последовательность номеров. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 12:44 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >Сон Веры Павловны, сегодня, 04:22 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22075896][22075896] >Иногда полезно вникать в код… < Согласен. Но не менее полезно знать для чего это нужно. Что нужно задавшему вопрос? Он хочет пронумеровать строки грида, или строки выборки? И что это дает? Если строки грида, то при сортировке закрепление номера за строкой выборки изменится. Если нумеруются строки выборки, то при сортировке нарушится последовательность номеров. Да, мне хотелось просто нумерацию, сверху вниз, не зависимо от сортировки данных. И если сортировка выполнена по какому-то полю, то в любом нумерация снова сверху вниз от 1 до ... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 12:50 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Такой достаточно стандартный функционал, можно было и добавить как стандартную фичу в DataGrid. Стандартный...? Мне он не разу не понадобился. Я, вообще, не понимаю, что такое номер строки при работе с БД? В базе это почти ID (если не было удалений). А если была неполная выборка или с сортировкой? Номер строки выборки? Тогда это должна делать Модель. А если сортировку, фильтрацию делает ViewModel или View? Какую полезную информацию, вообще, этот номер может нести в DataGrid? Допустим, список покупок в корзине. Но список покупок это данные из БД. И номер покупки это часть этих данных хранящихся в БД. И View никоим образом не должна сама ставить эти номера. Она может только отсортировать по ним. А изменение номеров (при удалении, добавлении, пересоритровке) - это функция Модели. Roman Mejtes , как всегда на высоте. Решение мне его очень понравилось. Всё корректно и ничего лишнего. Евгений Стронг , но вот где вы его собираетесь применить...? Только может, для редактирования матриц..? Даже в голову не приходит вариант где может понадобиться в View ставить номера строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 13:12 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг можно было и добавить как стандартную фичу в DataGrid Евгений Стронг по сравнению с вин контролами В одном из учебников был простейший пример, как сделать вот такое представление для карточной игры (см. картинку). Это обычный ListBox. Можно ли сделать это с помощью винконтроловского листбокса? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 13:18 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Eld Hasp Мне он не разу не понадобился. я писал ERP с огромным количеством представлений данных в виде гридов. Ни разу не требовалась нумерация строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 13:20 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Eld Hasp Даже в голову не приходит вариант где может понадобиться в View ставить номера строк. Я навскидку знаю один пример, где в гриде есть порядковые номера строк - в гриде результатов запроса SSMS. Но это очень специфический случай. Евгений Стронг Вроде преимущества WPF, но в то же время по сравнению с вин контролами - достаточно напутано. А в чём, по-вашему, заключаются эти самые преимущества WPF? Зачем вы решили использовать именно его? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 15:30 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Eld Hasp Мне он не разу не понадобился. я писал ERP с огромным количеством представлений данных в виде гридов. Ни разу не требовалась нумерация строк. Ну вообще нумерация прекрасный способ увидеть номер вашей строки, на которую вы обратили внимания или хотите запомнить. Даже в MS Studio в результативном наборе тебе возвращаются номера строк. В редакторе кода можно (и нужно) его включать, так как ошибка указывает именно на строку с ошибкой и тд. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:05 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Евгений Стронг можно было и добавить как стандартную фичу в DataGrid Евгений Стронг по сравнению с вин контролами В одном из учебников был простейший пример, как сделать вот такое представление для карточной игры (см. картинку). Это обычный ListBox. Можно ли сделать это с помощью винконтроловского листбокса? О том и речь, что на WPF можно сделать всё, что угодно красивого, а вот добавить элементарный функционал, который на тех же контролах вообще по умолчанию включен - надо плясать с бубном несколько суток. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:06 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Eld Hasp Даже в голову не приходит вариант где может понадобиться в View ставить номера строк. Я навскидку знаю один пример, где в гриде есть порядковые номера строк - в гриде результатов запроса SSMS. Но это очень специфический случай. Евгений Стронг Вроде преимущества WPF, но в то же время по сравнению с вин контролами - достаточно напутано. А в чём, по-вашему, заключаются эти самые преимущества WPF? Зачем вы решили использовать именно его? Поддался на маркетинг от мелкософта. Якобы как круто, вы только посмотрите. Всё настраивается и всё очень гибко. Только вот забыли добавить, что это настолько гибко, что вы будете гуглить как сумасшедший не один день ещё, чтобы сделать элементарную настройку, которая на вин контролах делается с помощью настроек мышкой. Ну это ладно) Надо же идти в ногу со временем. Ну а если серьезно, то преимуществ то много на самом деле и то, что я описал выше - является одним из главных - современные технологии. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:08 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг В редакторе кода можно (и нужно) его включать, так как ошибка указывает именно на строку с ошибкой и тд. Перейти в большинстве программ на нужную строку (и студия - не исключение) - Ctrl+G, номер текущей строки всегда отображается в строке состояния, и этого совершенно достаточно, чтобы не мозолить себе глаза ненужным столбцом. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:31 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Поддался на маркетинг от мелкософта. Якобы как круто, вы только посмотрите. Всё настраивается и всё очень гибко. Только вот забыли добавить, что это настолько гибко, что вы будете гуглить как сумасшедший не один день ещё, чтобы сделать элементарную настройку, которая на вин контролах делается с помощью настроек мышкой. Ну это ладно) Надо же идти в ногу со временем. Ну а если серьезно, то преимуществ то много на самом деле и то, что я описал выше - является одним из главных - современные технологии. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:32 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Евгений Стронг, сегодня, 16:05 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076023][22076023] >Ну вообще нумерация прекрасный способ увидеть номер вашей строки, на которую вы обратили внимания или хотите запомнить. < Не думаю. Сортировка и фильтр Ваш прекрасный способ опускают ниже плинтуса. Для работы хватает этого преобразования: Код: c# 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:37 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Евгений Стронг В редакторе кода можно (и нужно) его включать, так как ошибка указывает именно на строку с ошибкой и тд. Перейти в большинстве программ на нужную строку (и студия - не исключение) - Ctrl+G, номер текущей строки всегда отображается в строке состояния, и этого совершенно достаточно, чтобы не мозолить себе глаза ненужным столбцом. Не могу тут согласиться. Грид - это сетка данных. И у каждой ячейки должна быть координата. Прекрасный пример тому - Excel. Элементарная ситуация: Сотрудник выводит набор данных в гриде и подзывает коллегу, говоря ему, что не может найти ту или иную информацию в списке заказов. А тот ему в ответ: Ну вот ведь! На 23 строку посмотри. В противном случае ему пришлось бы тыкать пальцем или говорить - ниже, выше и тд. Нумерация - это идентификатор строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:38 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг не может найти ту или иную информацию в списке заказов ВМоисеев Сортировка и фильтр Ваш прекрасный способ опускают ниже плинтуса. У меня несколько десятков человек работали со списком заказов. И за 20 лет ни у кого не возникло потребности, подобной твоей. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:45 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Идентификация заказа происходит по номеру заказа, а не по сиюминутному номеру строки, которая у каждого будет своя, потому что у каждого будет разная сортировка фильтрация и время последнего обновления списка (за которое список мог измениться). Так что неудачный пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 16:48 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Евгений Стронг, сегодня, 16:38 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076043][22076043] >...На 23 строку посмотри… < Строка и так подсвечивается. «Не следует множить сущее без необходимости» ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:09 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Ну а если серьезно, то преимуществ то много на самом деле и то, что я описал выше - является одним из главных - современные технологии. Современность технологии не является преимуществом сама по себе. И если WPF используется исключительно по подобной причине, то лучше это дело бросить, и использовать винформс, где это "делается с помощью настроек мышью". И да, у WPF высокий порог вхождения. И таки придется много гуглить не один день. И что-то более-менее внятное начнёт получаться минимум через полгода интенсивной практики. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:12 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >Евгений Стронг, сегодня, 16:38 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076043][22076043] >...На 23 строку посмотри… < Строка и так подсвечивается. «Не следует множить сущее без необходимости» Так ты на экране стоишь на 5 строке, а я вижу, что нужный номер заказа, который ты не видишь находится на 23 строке. Но это я мог бы сказать, если бы были пронумерованы строки. А так мне придется тыкать пальцем в монитор или называть другие данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:13 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Идентификация заказа происходит по номеру заказа, а не по сиюминутному номеру строки, которая у каждого будет своя, потому что у каждого будет разная сортировка фильтрация и время последнего обновления списка (за которое список мог измениться). Так что неудачный пример. Я же тебе написал про ситуацию, когда я подошел к твоему компу. И стою у тебя сзади за спиной. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:14 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Идентификация заказа происходит по номеру заказа, а не по сиюминутному номеру строки, которая у каждого будет своя, потому что у каждого будет разная сортировка фильтрация и время последнего обновления списка (за которое список мог измениться). Так что неудачный пример. И ты тоже не прочитал внимательно. Я стою у сотрудника за спиной. И смотрим мы в один монитор и видим, соответственно один набор данных. А номер заказа имеет формат: SG_TM_00093415 И я говорю тебе, ну вот заказ "3415" и ты глазами ищешь у себя его перед глазами в общем списке. Прекрасная программа и очень удобная. А если пользователи не жалуются, то это не значит, что им всё нравится, а просто они не знают, что можно по-другому. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:16 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Crtl+F "3415" Enter Евгений Стронг Прекрасная программа и очень удобная ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:18 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг А если пользователи не жалуются, то это не значит, что им всё нравится, а просто они не знают, что можно по-другому. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:20 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Crtl+F "3415" Enter Евгений Стронг Прекрасная программа и очень удобная Вот теперь представь этот же геморой, когда тебе надо отладить процедуру в 1000 строк, когда она у тебя упала на 384 и тебе об этом сообщила ошибка. И вместо того, чтобы перейти на нужную строку и разбираться, ты жмешь Ctrl+F и ищешь по названию, например параметра" и ищешь, где же примерно "твоя" кривая строка кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:22 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Вот теперь представь этот же геморой, когда тебе надо отладить процедуру в 1000 строк, когда она у тебя упала на 384 и тебе об этом сообщила ошибка. И вместо того, чтобы перейти на нужную строку и разбираться, ты жмешь Ctrl+F и ищешь по названию, например параметра" и ищешь, где же примерно "твоя" кривая строка кода. Евгений Стронг И ты тоже не прочитал внимательно Shocker.Pro Перейти в большинстве программ на нужную строку (и студия - не исключение) - Ctrl+G А если ты говоришь про "процедуру", вероятно ты имеешь ввиду SSMS - так там вообще можно перейти на нужную строку двойным щелчком по ошибке (хоть это и неочевидно) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:25 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Евгений Стронг Вот теперь представь этот же геморой, когда тебе надо отладить процедуру в 1000 строк, когда она у тебя упала на 384 и тебе об этом сообщила ошибка. И вместо того, чтобы перейти на нужную строку и разбираться, ты жмешь Ctrl+F и ищешь по названию, например параметра" и ищешь, где же примерно "твоя" кривая строка кода. Евгений Стронг И ты тоже не прочитал внимательно Shocker.Pro Перейти в большинстве программ на нужную строку (и студия - не исключение) - Ctrl+G А если ты говоришь про "процедуру", вероятно ты имеешь ввиду SSMS - так там вообще можно перейти на нужную строку двойным щелчком по ошибке (хоть это и неочевидно) Ну ты сейчас говоришь о том, как выйти из ситуации, когда нет нумерации строк. CTRL+F, CTRL+G и тд. С таким же успехом можно убрать и остальные контролы из приложения и использовать хот клавиши. И вернуться в dos вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:37 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Евгений Стронг, сегодня, 17:13 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076052][22076052] >Так ты на экране стоишь на 5 строке … < Хорошо. Посмотрите на этот код. Может и пригодиться. Код: c# 1.
Имейте ввиду грид допускает сортировку, фильтрацию и группировку. И можете сами взять мышку и показать нужную строку. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 17:50 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Не могу тут согласиться. Грид - это сетка данных. И у каждой ячейки должна быть координата. Прекрасный пример тому - Excel. Элементарная ситуация: Сотрудник выводит набор данных в гриде и подзывает коллегу, говоря ему, что не может найти ту или иную информацию в списке заказов. А тот ему в ответ: Ну вот ведь! На 23 строку посмотри. В противном случае ему пришлось бы тыкать пальцем или говорить - ниже, выше и тд. Нумерация - это идентификатор строки. Начиная с этого поста и дальше, во всех описанных ситуациях - номер строки это часть данных. Он должен формироваться в Модели и храниться в БД или другом хранилище. Ваша потребность формировать в View этот номер (по крайней мере в описанных вами ситуациях), возникла только из-за того, что вы плохо разделяете где данные, а где их представление. Допустим, вы приводите пример редактирование текста (или кода) где есть номер строк. Этот номер строки является неотъемлемой частью этой строки. Он никоим образом не может формироваться в View. Если строки берутся из текстового файла, то это именно номер строки в файле. И DataGrid (или иной контрол) будет только отображать этот номер, но ни как не формировать его. Если меняется порядок строк, то он меняется в файле, то есть в данных. И менять будет его Модель или уровень даже ещё ниже. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2020, 23:18 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >Евгений Стронг, сегодня, 17:13 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076052][22076052] >Так ты на экране стоишь на 5 строке … < Хорошо. Посмотрите на этот код. Может и пригодиться. Код: c# 1.
Имейте ввиду грид допускает сортировку, фильтрацию и группировку. И можете сами взять мышку и показать нужную строку. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 00:17 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Eld Hasp Евгений Стронг Не могу тут согласиться. Грид - это сетка данных. И у каждой ячейки должна быть координата. Прекрасный пример тому - Excel. Элементарная ситуация: Сотрудник выводит набор данных в гриде и подзывает коллегу, говоря ему, что не может найти ту или иную информацию в списке заказов. А тот ему в ответ: Ну вот ведь! На 23 строку посмотри. В противном случае ему пришлось бы тыкать пальцем или говорить - ниже, выше и тд. Нумерация - это идентификатор строки. Начиная с этого поста и дальше, во всех описанных ситуациях - номер строки это часть данных. Он должен формироваться в Модели и храниться в БД или другом хранилище. Ваша потребность формировать в View этот номер (по крайней мере в описанных вами ситуациях), возникла только из-за того, что вы плохо разделяете где данные, а где их представление. Допустим, вы приводите пример редактирование текста (или кода) где есть номер строк. Этот номер строки является неотъемлемой частью этой строки. Он никоим образом не может формироваться в View. Если строки берутся из текстового файла, то это именно номер строки в файле. И DataGrid (или иной контрол) будет только отображать этот номер, но ни как не формировать его. Если меняется порядок строк, то он меняется в файле, то есть в данных. И менять будет его Модель или уровень даже ещё ниже. Да вот я делал в своем проекте нумерацию строк. На Delphi, если не ошибаюсь компонент DBGridEh. Одна галочка и строки нумеруются. Не зависимо от их сортировки и фильтрации. Первая строка = 1 и тд. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 00:20 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг, И да, она никоем образом не занимает никакое полезное пространство. Ну только если пару пикселей на значения более 9. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 00:21 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Да вот я делал в своем проекте нумерацию строк. На Delphi, если не ошибаюсь компонент DBGridEh. Одна галочка и строки нумеруются. Не зависимо от их сортировки и фильтрации. Первая строка = 1 и тд. Я не знаю Delphi. Не знаю паттерны там используемые. WPF - это инструмент специально созданный для реализации View в паттерне MVVM. Без MVVM приложение WPF превращается в гору костылей разваливающуюся от любого чиха. Поэтому в Решении WPF (в котором собственно WPF это только View) надо чётко понимать где данные, а где их представление. WinForms относится к этому гораздо "лояльнее" (возможно Delphi тоже). Поэтому на WF очень много кривых приложений созданных почти без применения ООП, используя приёмы процедурного программирования. В случаях описанных вами, номер строки является свойством данных, а не свойством их представления. Необходимость в View иметь номера строк никак не связанные с самими данными источниками этих строк - нулевая. И возникает только из-за отсутствия понимания, что это часть данных. И смысла навешивать ненужный функционал, только подталкивающий к неправильному использованию WPF, ни какого нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 10:04 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Несмотря на то, что я выше сказал, что сделал бы нумерацию строк частью модели, как и ты, я бы всё-таки поспорил, что нумерация строк является частью данных. ТС привел хороший пример - SSMS, данными является то, что пришло с сервера, нумерация строк - всего лишь вспомогательный инструмент, с сервера он не приходит и не привязан к конкретной записи БД. Опять же в примерах использования, который приводит ТС, номер строки не является частью данных. Это именно представление такое. Хорошее сравнение будет - ось координат. Если данные графика, построенного в осях является 100% моделью, то сами оси - это часть представления. Нумерация строк - это ось координат. Вопрос необходимости такой оси также оказался спорным, но мы сейчас не об этом. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 10:57 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Евгений Стронг, сегодня, 00:20 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076200][22076200] >Да вот я делал в своем проекте нумерацию строк… < А что, неплохо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 11:48 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Eld Hasp Я не знаю Delphi. Не знаю паттерны там используемые. Примерно та же петрушка, что и у винформс. Самый популярный паттерн - magic pushbutton. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 12:08 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Несмотря на то, что я выше сказал, что сделал бы нумерацию строк частью модели, как и ты, я бы всё-таки поспорил, что нумерация строк является частью данных. ТС привел хороший пример - SSMS, данными является то, что пришло с сервера, нумерация строк - всего лишь вспомогательный инструмент, с сервера он не приходит и не привязан к конкретной записи БД. Опять же в примерах использования, который приводит ТС, номер строки не является частью данных. Это именно представление такое. Хорошее сравнение будет - ось координат. Если данные графика, построенного в осях является 100% моделью, то сами оси - это часть представления. Нумерация строк - это ось координат. Вопрос необходимости такой оси также оказался спорным, но мы сейчас не об этом. Может я и ошибаюсь, ели что поправьте. Нумерация строк может содержится явно в БД (или другом хранилище). Допустим, как я уже писал, список покупок в "Корзине". Второй пример строки текста в текстовом файле. Явно номеров строк в таком случае нет. Но не явно, они есть - это именно номер строки в файле и ничто другое. Может ли в этом случает отличаться номера в DataGrid от номера строки в файле? Я не вижу таких сценариев. Третий сценарий - " SSMS, данными является то, что пришло с сервера". А что в этом сценарии отличается от предыдущего? Разве номер строки, это не номер в этих данных? Может ли номер строки в данных отличаться от номера представления этой же строки в DataGrid? На мой взгляд, нет. Следовательно, этот номер являются частью пришедших данных, пусть явно в них и не обозначенной. Четвёртый пример, от TC. Создание таблицы по типы листа Excel. Но и в таком случае номера строк и колонок - это тоже часть данных. Достаточно открыть VBA и посмотреть как представлен Лист чтобы в этом убелиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 12:18 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Eld Hasp Я не знаю Delphi. Не знаю паттерны там используемые. Примерно та же петрушка, что и у винформс. Самый популярный паттерн - magic pushbutton. Сам на Delphi ничего не делал. Но не раз сталкивался с теми кто пытается с Delphi перейти.... - знания на уровне Фортрана тридцатилетней давности. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 12:22 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг, а реально пользователям вашего приложения нужна эта нумерация? или просто потому, что в Дельфи одна галочка? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 14:42 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 14:42 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076292][22076292] >а реально пользователям … < это нужная новая функция, это рюшечка. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 15:09 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >skyANA, сегодня, 14:42 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076292][22076292] >а реально пользователям … < это нужная новая функция, это рюшечка. Именно рюшечка. Когда пользователь "не может найти ту или иную информацию в списке заказов" и зовёт коллегу, то проблема совсем не в нумерации строк :) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 15:50 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
skyANA то проблема совсем не в нумерации строк ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 16:05 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
мне кажется, автор просто думает, что WPF типа должен быть супер простым и интуитивным, но цель этого фрейморка была не в этом. за простотой стоит идти в FoxPro, Access и т.д. Мощь WPF в его пластичности, полностью отделенном представлении от модели, в графическом движке с ускорением, в привязка и перечислять можно довольно долго. И при ближайшем рассмотрении оказывается, что всё это нефига не просто, и когда хотелки выходят за рамки поведения (именно поведения!) существующих элементов управления нужно ручками писать код, при этом хорошо понимая внутренний механизм работы этого самого WPF. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 21:16 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Евгений Стронг, сегодня, 00:20 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076200][22076200] >Да вот я делал в своем проекте нумерацию строк … < Здесь решение Вашей задачи. Посмотри, может и сгодится. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 22:16 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >Евгений Стронг, сегодня, 00:20 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076200][22076200] >Да вот я делал в своем проекте нумерацию строк … < Здесь решение Вашей задачи. Посмотри, может и сгодится. есть подозрение, что он работать не будет :) и кидать NotImplementedException в блоке Catch ))) упоротые индусы писали походу ) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2020, 22:49 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Roman Mejtes мне кажется, автор просто думает, что WPF типа должен быть супер простым и интуитивным, но цель этого фрейморка была не в этом. за простотой стоит идти в FoxPro, Access и т.д. Мощь WPF в его пластичности, полностью отделенном представлении от модели, в графическом движке с ускорением, в привязка и перечислять можно довольно долго. И при ближайшем рассмотрении оказывается, что всё это нефига не просто, и когда хотелки выходят за рамки поведения (именно поведения!) существующих элементов управления нужно ручками писать код, при этом хорошо понимая внутренний механизм работы этого самого WPF. Его мощь в сложном дизайне, который никому не нужен в приложениях. То, что на вин контролах ты сделаешь за 5 минут и перейдешь к главному - написанию логики приложения, то в WPF ты будешь неделю страдать. Самое удивительное, что чтобы сделать тот же функционал грида, который достаточно кинуть на форму, так ты ещё вынужден его самостоятельно написать. Кому эта гибкость нужна? Будто бы заказчики так и хотят круглых форм и закругленных формочек с выпадающими списками со встроенными чекбоксами и картинками. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 00:45 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Eld Hasp Сон Веры Павловны пропущено... Примерно та же петрушка, что и у винформс. Самый популярный паттерн - magic pushbutton. Сам на Delphi ничего не делал. Но не раз сталкивался с теми кто пытается с Delphi перейти.... - знания на уровне Фортрана тридцатилетней давности. Ну вот не надо. То, что я на делфи закончу писать, вы будете на C# только на уровне WPF ковыряться. Создавать бесконечное множество классов и выделять под них память, тогда как я кину один компонент на форму. А если говорить о синтаксисе, то C# крайне многословен. Элементарные вещи делаются с большими усилиями и простынями кода. Я так и не понял, что в этом C# такого прекрасного, что его хвалят? Эти люди наверно не знают других языков. Откройте тот же Phyton. Понятное дело, что язык скриптовый и подход совершенно иной, но на сколько же он понятен, красив и краток. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 00:50 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Roman Mejtes ВМоисеев >Евгений Стронг, сегодня, 00:20 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076200][22076200] >Да вот я делал в своем проекте нумерацию строк … < Здесь решение Вашей задачи. Посмотри, может и сгодится. есть подозрение, что он работать не будет :) и кидать NotImplementedException в блоке Catch ))) упоротые индусы писали походу ) Вроде должен работать. Исключение возникает только если имя "DG1" присвоено не DataGrid. И по смыслу, что для других типов элементов не реализовано - подходит. Сомневаюсь, только, что при сортировке, удалении нумерация будет корректной. Завтра проверю. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 01:45 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Eld Hasp пропущено... Не удивлён. Сам на Delphi ничего не делал. Но не раз сталкивался с теми кто пытается с Delphi перейти.... - знания на уровне Фортрана тридцатилетней давности. Ну вот не надо. То, что я на делфи закончу писать, вы будете на C# только на уровне WPF ковыряться. Создавать бесконечное множество классов и выделять под них память, тогда как я кину один компонент на форму. А если говорить о синтаксисе, то C# крайне многословен. Элементарные вещи делаются с большими усилиями и простынями кода. Я так и не понял, что в этом C# такого прекрасного, что его хвалят? Эти люди наверно не знают других языков. Откройте тот же Phyton. Понятное дело, что язык скриптовый и подход совершенно иной, но на сколько же он понятен, красив и краток. И что? На Фортране тоже можно быстро написать прогу которую на других языках намного дольше делать. Это что-то доказывает или опровергает? Есть очень большая область задач для которых приложения проще и быстрее писать на Консоли, на WinForms, на Delphi и т.д. Для многих просто не нужен ни WPF, ни C#, ни Net. И что с этого? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 01:50 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Ну вот не надо. То, что я на делфи закончу писать, вы будете на C# только на уровне WPF ковыряться. Создавать бесконечное множество классов и выделять под них память, тогда как я кину один компонент на форму. А если говорить о синтаксисе, то C# крайне многословен. Элементарные вещи делаются с большими усилиями и простынями кода. Я так и не понял, что в этом C# такого прекрасного, что его хвалят? Эти люди наверно не знают других языков. Откройте тот же Phyton. Понятное дело, что язык скриптовый и подход совершенно иной, но на сколько же он понятен, красив и краток. И кто же эти садисты, которые заставляют Вас работать с C#? И не дают работать на дельфи и питоне? Не мучайте так себя, возвращайтесь к тому, что вам удобнее, и что больше нравится. Евгений Стронг тогда как я кину один компонент на форму Прекрасно. Для чистоты экспенримента сделайте эту самую нумерацию строк в гриде, не зависящую от сортировки, в голом дельфи/винформс, без сторонних компонентов. Потому как вышеприведенное решение на WPF обходится исключительно стандартным функционалом. А вышеупомянутый DBGridEh из EhLib, кстати, платный - у Вас куплена лицензия на него? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 06:29 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Eld Hasp пропущено... Не удивлён. Сам на Delphi ничего не делал. Но не раз сталкивался с теми кто пытается с Delphi перейти.... - знания на уровне Фортрана тридцатилетней давности. Ну вот не надо. То, что я на делфи закончу писать, вы будете на C# только на уровне WPF ковыряться. Создавать бесконечное множество классов и выделять под них память, тогда как я кину один компонент на форму. А если говорить о синтаксисе, то C# крайне многословен. Элементарные вещи делаются с большими усилиями и простынями кода. Я так и не понял, что в этом C# такого прекрасного, что его хвалят? Эти люди наверно не знают других языков. Откройте тот же Phyton. Понятное дело, что язык скриптовый и подход совершенно иной, но на сколько же он понятен, красив и краток. Вы думаете никто тут не писал на Delphi и не знаком с Python? :) К чему эти эмоции? Займитесь делом. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 08:37 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Eld Hasp Евгений Стронг пропущено... Ну вот не надо. То, что я на делфи закончу писать, вы будете на C# только на уровне WPF ковыряться. Создавать бесконечное множество классов и выделять под них память, тогда как я кину один компонент на форму. А если говорить о синтаксисе, то C# крайне многословен. Элементарные вещи делаются с большими усилиями и простынями кода. Я так и не понял, что в этом C# такого прекрасного, что его хвалят? Эти люди наверно не знают других языков. Откройте тот же Phyton. Понятное дело, что язык скриптовый и подход совершенно иной, но на сколько же он понятен, красив и краток. И что? На Фортране тоже можно быстро написать прогу которую на других языках намного дольше делать. Это что-то доказывает или опровергает? Есть очень большая область задач для которых приложения проще и быстрее писать на Консоли, на WinForms, на Delphi и т.д. Для многих просто не нужен ни WPF, ни C#, ни Net. И что с этого? Ничего. Просто высказался по поводу языка, который мелкософт активно навязывает и рассказывает всем, какой он классный и прекрасный. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 09:22 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Евгений Стронг Ну вот не надо. То, что я на делфи закончу писать, вы будете на C# только на уровне WPF ковыряться. Создавать бесконечное множество классов и выделять под них память, тогда как я кину один компонент на форму. А если говорить о синтаксисе, то C# крайне многословен. Элементарные вещи делаются с большими усилиями и простынями кода. Я так и не понял, что в этом C# такого прекрасного, что его хвалят? Эти люди наверно не знают других языков. Откройте тот же Phyton. Понятное дело, что язык скриптовый и подход совершенно иной, но на сколько же он понятен, красив и краток. И кто же эти садисты, которые заставляют Вас работать с C#? И не дают работать на дельфи и питоне? Не мучайте так себя, возвращайтесь к тому, что вам удобнее, и что больше нравится. Евгений Стронг тогда как я кину один компонент на форму Прекрасно. Для чистоты экспенримента сделайте эту самую нумерацию строк в гриде, не зависящую от сортировки, в голом дельфи/винформс, без сторонних компонентов. Потому как вышеприведенное решение на WPF обходится исключительно стандартным функционалом. А вышеупомянутый DBGridEh из EhLib, кстати, платный - у Вас куплена лицензия на него? Данный функционал работает и был представлен в бесплатной версии. Мне вообще не понятна философия большинства программистов. Я так понимаю - это люди старой закалки. То есть Вы предлагаете мне не сесть на велосипед и поехать, а изначально его изобрести? А для чего эти сложности? К чему тогда идет информационный мир? Посмотрите на другие сервисы, как они построены. Уже даже сам код уходит на второй план. Будущее программирование - это исключительно закладывание логики приложения. Но уж точно не тратить половину времени на то, чтобы нормально разместить и отобразить "проклятую" кнопку. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 09:24 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Данный функционал работает и был представлен в бесплатной версии. А если его бы вдруг там не оказалось, что бы делали? Евгений Стронг есть Вы предлагаете мне не сесть на велосипед и поехать, а изначально его изобрести? А для чего эти сложности? Требуемая в данном топике функциональность - вовсе не велосипед, и для многих высказавшихся здесь необходимость её наличия вообще вызывает сомнения. И у Вас ровно два варианта: искать готовое решение (и не факт, что оно найдется - я такой функциональности не видел у того же девэкспресса, не видел у телерика, в стандартном винформсовом DGV её и подавно нет). Либо потрудиться немного изучить матчасть, и сделать наконец хоть что-то самому. Тем более, что готовое решение уже было выложено и разъяснено. На все возможные хотелки готового существующего функционала не будет никогда. Евгений Стронг К чему тогда идет информационный мир? Посмотрите на другие сервисы, как они построены. Уже даже сам код уходит на второй план. Будущее программирование - это исключительно закладывание логики приложения. Герман Оскарович, перелогиньтесь. Евгений Стронг Но уж точно не тратить половину времени на то, чтобы нормально разместить и отобразить "проклятую" кнопку. А вот это уже передёргивание чистой воды. О кнопках и проблемах с ним в этом топике не было ни слова, и я сам с проблемами отображения стандартных кнопок не сталкивался никогда. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 09:51 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Евгений Стронг Данный функционал работает и был представлен в бесплатной версии. А если его бы вдруг там не оказалось, что бы делали? Евгений Стронг есть Вы предлагаете мне не сесть на велосипед и поехать, а изначально его изобрести? А для чего эти сложности? Требуемая в данном топике функциональность - вовсе не велосипед, и для многих высказавшихся здесь необходимость её наличия вообще вызывает сомнения. И у Вас ровно два варианта: искать готовое решение (и не факт, что оно найдется - я такой функциональности не видел у того же девэкспресса, не видел у телерика, в стандартном винформсовом DGV её и подавно нет). Либо потрудиться немного изучить матчасть, и сделать наконец хоть что-то самому. Тем более, что готовое решение уже было выложено и разъяснено. На все возможные хотелки готового существующего функционала не будет никогда. Евгений Стронг К чему тогда идет информационный мир? Посмотрите на другие сервисы, как они построены. Уже даже сам код уходит на второй план. Будущее программирование - это исключительно закладывание логики приложения. Герман Оскарович, перелогиньтесь. Евгений Стронг Но уж точно не тратить половину времени на то, чтобы нормально разместить и отобразить "проклятую" кнопку. А вот это уже передёргивание чистой воды. О кнопках и проблемах с ним в этом топике не было ни слова, и я сам с проблемами отображения стандартных кнопок не сталкивался никогда. "я такой функциональности не видел у того же девэкспресса" - оно есть у всех. У дева, в том числе. автор"и я сам с проблемами отображения стандартных кнопок не сталкивался никогда" Я утрировал, конечно же. Но тем не менее, это в разы сложнее управляется, чем вин формы. И это не только моё мнение. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 10:02 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг, в 2004-м году на моей первой работе, где я проработал год после института, решили мы переходить с Centura SQLWindows/32 на .NET WinForms 1.1 и был тогда только DataGrid, без нумераций, без различных типов колонок, без ничего а работали мы на НК "ЮКОС", туева хуча операторов по всей России, которым нужно от грида много чего: фильтровать, перетаскивать колонки местами, иконочки всякие, отоброжающие состояние, суммы по строке и столбцу, выгружать в Excel, раскрашивать ячейки разными цветами, лукапы, выпадающие списки, попапы, выбор даты в ячейке... до фига всего... и не было тогда готовых компонентов, не только грида, но и других, и платных тоже тогда ещё не было (не успели понаписать к версии 1.1) а в Centura были, и туева хуча людей к ним привыкла и пришлось писать, причём в основном мне, потому как ведущие разработчики пилили логику и написал, без лишних эмоций да и эмоции тогда высказать было негде, так как не было такого обилия форумов, статей, телеграмм каналов, сообществ а нумерацию строк так никто и не попросил, устраивало то, что в модели отдельным свойством был порядковый номер и он выводился отдельной колонкой вообщем мне бы ваши проблемы :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 10:54 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Будущее программирование - это исключительно закладывание логики приложения. Почему будущее? Я давно уже по большей части только и занимаюсь, что исключительно закладываю логику. Интерфейсом занимаются те, у кого это лучше получается. Вы становитесь Senior Backend Developer-ом и забудете про все эти поля счётчики :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 11:02 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг "я такой функциональности не видел у того же девэкспресса" - оно есть у всех. У дева, в том числе. На скриншоте изображен spreadsheet control, а не DataGrid. Это немного две большие разницы. И да, вы готовы оплатить лицензию DevX исключительно из-за порядкового номера строки в гриде? (да и вообще оплатить эту лицензию?) Евгений Стронг Я утрировал, конечно же. Но тем не менее, это в разы сложнее управляется, чем вин формы. И это не только моё мнение. И мне сново интересно - если это всё так сложно, зачем вы этим занимаетесь? Занимайтесь теми же винформс, и будет Вам счастье. skyANA Почему будущее? Я давно уже по большей части только и занимаюсь, что исключительно закладываю логику. Интерфейсом занимаются те, у кого это лучше получается. Потому что в исключительную стадию это не перешло, и те, кто занимается интерфейсами, ими по-прежнему занимаются. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 11:21 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Хотел написать развернутый ответ, но понял, что его уже на 3 страницах разжевывают и мои 5 копеек тут не нужны :) по этому, просто оставлю это здесь: Эффект Даннинга - Крюгера , может кому будет интересно почитать :D и сделать выводы ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 11:44 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 11:02 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076583][22076583] >...Вы становитесь Senior Backend Developer-ом и забудете про все эти поля счётчики :) < Понимаю Вас, но думаю, что в этом вопросе, мы, оппоненты не правы. Евгений поставил вопрос, и он как и все мы имеет на это право, и не важно для чего сиё ему нужно - важно найти решение. И разобрать это решение. Думаю появится много интересных вопросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 11:46 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >skyANA, сегодня, 11:02 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076583][22076583] >...Вы становитесь Senior Backend Developer-ом и забудете про все эти поля счётчики :) < Понимаю Вас, но думаю, что в этом вопросе, мы, оппоненты не правы. Евгений поставил вопрос, и он как и все мы имеет на это право, и не важно для чего сиё ему нужно - важно найти решение. И разобрать это решение. Думаю появится много интересных вопросов. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 11:51 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны skyANA Почему будущее? Я давно уже по большей части только и занимаюсь, что исключительно закладываю логику. Интерфейсом занимаются те, у кого это лучше получается. Потому что в исключительную стадию это не перешло, и те, кто занимается интерфейсами, ими по-прежнему занимаются. Исключительная стадия? Это что вообще такое? Я вот не представляю, чтобы удобные и эффективные интерфейсы начали сами себя проектировать и реализовывать :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 11:55 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >skyANA, сегодня, 11:02 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076583][22076583] >...Вы становитесь Senior Backend Developer-ом и забудете про все эти поля счётчики :) < Понимаю Вас, но думаю, что в этом вопросе, мы, оппоненты не правы. Евгений поставил вопрос, и он как и все мы имеет на это право, и не важно для чего сиё ему нужно - важно найти решение. И разобрать это решение. Думаю появится много интересных вопросов. Судя по его постам, проблема не сколько в изначальном вопросе, а вообще в переходе на C#. Что-то, или кто-то толкает его в эту сторону, из зоны привычного ему комфорта, а он сопротивляется :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:00 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
skyANA Исключительная стадия? Это что вообще такое? Я вот не представляю, чтобы удобные и эффективные интерфейсы начали сами себя проектировать и реализовывать :) Я тоже не особенно это себе представляю, но, тем не менее: Евгений Стронг Будущее программирование - это исключительно закладывание логики приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:08 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны skyANA Исключительная стадия? Это что вообще такое? Я вот не представляю, чтобы удобные и эффективные интерфейсы начали сами себя проектировать и реализовывать :) Я тоже не особенно это себе представляю, но, тем не менее: Евгений Стронг Будущее программирование - это исключительно закладывание логики приложения. ИМХО следует читать, как видение Евгением своего будущего как программиста. На что я ему и предложил стать Senior Backend Developer-ом. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:24 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Я тоже не особенно это себе представляю, но, тем не менее: Евгений Стронг Будущее программирование - это исключительно закладывание логики приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:29 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Roman Mejtes, сегодня, 11:51 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076647][22076647] >решение на 1 странице и оно работает … < Ой ли. Покажите рабочую картинку Вашего грида и сравните с этим . Как Вы включаете/отключаете нумерацию? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:33 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 12:00 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076662][22076662] >Судя по его постам, проблема не сколько в изначальном вопросе… < Так это мы, оппоненты, подменили проблему, сменили тапочки на лету, так сказать и ушли от вопроса. Евгений сказал конкретно - хочу нумеровать строки грида. Подскажите как это сделать. Точка. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:41 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев, Но напомню, что ТС на предложенное решение сказал - ой как сложно, в дельфи-то одной галочкой делается. Не акцентируя внимание на то, что в дельфи он использовал для этого сторонний компонент, а WPF захотел эту галочки из коробки. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:45 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >skyANA, сегодня, 12:00 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076662][22076662] >Судя по его постам, проблема не сколько в изначальном вопросе… < Так это мы, оппоненты, подменили проблему, сменили тапочки на лету, так сказать и ушли от вопроса. Евгений сказал конкретно - хочу нумеровать строки грида. Подскажите как это сделать. Точка. Ручками. Показать как код писать? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:53 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >Roman Mejtes, сегодня, 11:51 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076647][22076647] >решение на 1 странице и оно работает … < Ой ли. Покажите рабочую картинку Вашего грида и сравните с этим . Как Вы включаете/отключаете нумерацию? https://recordit.co/jvxsO0rui6 включение и отключение нумерации делается через стили, вы либо применяете стиль с нумерацией, либо без нумерации, делать это можно и в runtime без особых проблем ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 13:55 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Roman Mejtes, сегодня, 13:55 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076794][22076794] > <Спасибо. Убедительно. Код можно привести? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 15:37 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ТС, не парься, по началу действительно WPF кажется жестью какой-то, потом за уши не оттянешь. Хотя, такого же уровня Web- приложения пилить намного проще- посмотри в эту сторону. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 16:23 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Разворошили тут WPF-склеп аж на 4 страницы дискуссий. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 16:25 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 12:53 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076724][22076724] >...Показать как код писать? < Зачем? Код надо представить. Здесь вариант. Если бы заработал, было бы приемлемо. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:03 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >skyANA, сегодня, 12:53 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076724][22076724] >...Показать как код писать? < Зачем? Код надо представить. У меня 26000 с лишним организаций и десятки миллионов пользователей, которые все что-то хотят. А я тут никому не нужный код писать буду. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:12 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 18:12 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22077060][22077060] >...А я тут никому не нужный код писать буду. < Судя по информации интернет, многим надо. Да и решение оказалось достойным : Код: c# 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:20 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев Судя по информации интернет, многим надо. Кому многим? Программистам? Мне вод хочется отфильтровать список так, чтобы выводился только каждый десятый заказ за период. Ну то есть наложить на поле счётчик условие по модулю 10. Ваше решение позволяет хоть какие-то фильтры накладывать на это поле? Нет. В топку ваше решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:34 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 18:34 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22077080][22077080] >...В топку ваше решение. < 1. Решение не моё - см. ссылку. 2. Нумерация находится в заголовках (header) строк. 3. То нумерация вам не нужна, то … условие по модулю 10. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:59 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >Roman Mejtes, сегодня, 13:55 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076794][22076794] > <Спасибо. Убедительно. Код можно привести? на первой странице, за исключением внешнего оформления, которое я подогнал под то, что вы показали, "примерно" ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 19:14 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
>Roman Mejtes, сегодня, 19:14 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22077119][22077119] >на первой странице, … < 1. Показывал ТС. 2. Собственно программный код здесь . 3. Результат: ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 20:50 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
skyANA Евгений Стронг Будущее программирование - это исключительно закладывание логики приложения. Почему будущее? Я давно уже по большей части только и занимаюсь, что исключительно закладываю логику. Интерфейсом занимаются те, у кого это лучше получается. Вы становитесь Senior Backend Developer-ом и забудете про все эти поля счётчики :) Придется становиться Senior Backend Developer-ом, чтобы не делать счетчик ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 00:44 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Roman Mejtes Хотел написать развернутый ответ, но понял, что его уже на 3 страницах разжевывают и мои 5 копеек тут не нужны :) по этому, просто оставлю это здесь: Эффект Даннинга - Крюгера , может кому будет интересно почитать :D и сделать выводы С чего Вы взяли, что это от низкой квалификации? Вы совершенно правы, только в обратном направлении. Откройте ту же студию Mssql напишите запрос и посмотрите на грид. Если по Вашему мнению там сидят идиоты, то вопросов больше нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 00:46 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >skyANA, сегодня, 12:00 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22076662][22076662] >Судя по его постам, проблема не сколько в изначальном вопросе… < Так это мы, оппоненты, подменили проблему, сменили тапочки на лету, так сказать и ушли от вопроса. Евгений сказал конкретно - хочу нумеровать строки грида. Подскажите как это сделать. Точка. Совершенно верно, друг. Я хочу велосипед, чтобы на нем кататься, а меня переубеждают, что можно и пешком сходить. А ещё и велосипед изобрести с нуля, раз уж нужна колонка-счетчик. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 00:49 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Откройте ту же студию Mssql напишите запрос и посмотрите на грид. Если по Вашему мнению там сидят идиоты, то вопросов больше нет. Это странно вообще-то, потому что та же Visual Studio - вполне приличный продукт, сделанный той же фирмой. Понятно, что разные команды, но не настолько же. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 00:52 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro ВМоисеев, Но напомню, что ТС на предложенное решение сказал - ой как сложно, в дельфи-то одной галочкой делается. Не акцентируя внимание на то, что в дельфи он использовал для этого сторонний компонент, а WPF захотел эту галочки из коробки. Ну конечно хотелось. Грид по умолчанию сортировать умеет по колонке, а пронумеровать строки нет. Я говорю с позиции - что если вводится какая-то технология, то она должна как минимум упрощать жизнь. Да, на WPF можно построить сложный интерфейс - достаточно просто. Но вот простой - достаточно сложно. Вот и весь WPF. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 00:54 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг, на PyQT переходите, какие проблемы? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 06:03 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Вот и весь WPF. Так покажите нам наконец, как эта галочка нумерации строк в гриде просто делается на дельфи, или винформс, или питоне. Без сторонних компонентов, разумеется, исключительно средствами из коробки. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 06:07 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
ВМоисеев >Roman Mejtes, сегодня, 19:14 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1322025&msg=22077119][22077119] >на первой странице, … < 1. Показывал ТС. 2. Собственно программный код здесь . 3. Результат: ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 11:14 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
skyANA Евгений Стронг, на PyQT переходите, какие проблемы? Так и сделал :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 12:25 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Сон Веры Павловны Евгений Стронг Вот и весь WPF. Так покажите нам наконец, как эта галочка нумерации строк в гриде просто делается на дельфи, или винформс, или питоне. Без сторонних компонентов, разумеется, исключительно средствами из коробки. В моем проекте это с помощью стороннего компонента было реализовано, так как стандартный функционал достаточно скудный. Но его скудность тогда казалась, потому что не с чем было сравнить. Теперь есть. Ну а вы хотите сравнить реализацию на C# и других языках? Я могу с уверенностью сказать, что C# многословен по сравнению с теми, которые вы перечислили. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 12:30 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Евгений Стронг не может найти ту или иную информацию в списке заказов ВМоисеев Сортировка и фильтр Ваш прекрасный способ опускают ниже плинтуса. У меня несколько десятков человек работали со списком заказов. И за 20 лет ни у кого не возникло потребности, подобной твоей. Что вы пристали к этому своему списку заказов? Вот вам скрин одной из WMS, которая функционирует в нашей одной из самых крупных компаний мира. Тут вообще идет как поле отдельное. Я же в своей программе скидывал, как свойство. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 13:46 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Евгений Стронг Откройте ту же студию Mssql напишите запрос и посмотрите на грид. Если по Вашему мнению там сидят идиоты, то вопросов больше нет. Это странно вообще-то, потому что та же Visual Studio - вполне приличный продукт, сделанный той же фирмой. Понятно, что разные команды, но не настолько же. О чем вообще с вами разговаривать тогда, если вы считаете говном одного из монстров в разработке - ssms. Прекрасный продукт, который используется в 90% компании, деятельность которых связана с MSSQL. Теперь зато стало понятно, какой софт пишете вы. И почему у вас нет нумерации строк)) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 13:49 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Евгений Стронг Прекрасный продукт, который используется в 90% компании Когда-то давно мы использовали EMS SQL Management Studio - она на голову выше SSMS в плане удобства использования, не знаю, как сейчас она поживает. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 13:57 |
|
WPF DataGrid поле счетчик
|
|||
---|---|---|---|
#18+
Shocker.Pro Евгений Стронг Прекрасный продукт, который используется в 90% компании Когда-то давно мы использовали EMS SQL Management Studio - она на голову выше SSMS в плане удобства использования, не знаю, как сейчас она поживает. Но и в нем есть - "CheckBox Show line numbers - отображать номера строк" ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 14:09 |
|
|
start [/forum/topic.php?all=1&fid=21&tid=1440292]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
136ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 253ms |
0 / 0 |