|
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 |
|
|
start [/forum/topic.php?fid=21&msg=39924235&tid=1440292]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
others: | 262ms |
total: | 416ms |
0 / 0 |