Master / Detail UI Best Practices? - PullRequest
       13

Master / Detail UI Best Practices?

2 голосов
/ 10 марта 2010

У нас есть приложение WPF, у которого есть окно master / detail, оба из которых являются WPF Datagrids. При выборе строки в верхней сетке данных подробности отображаются в нижней сетке данных. Мне было интересно, если есть какие-либо лучшие практики с точки зрения пользовательского интерфейса о том, как бороться с такими вещами, как:

  1. При первом открытии окна в верхней сетке данных не выбирается ни один столбец данных, поэтому данные в нижней сетке не отображаются. Это нормально? Или в верхней сетке данных обычно выбирается начальная (верхняя) строка?
  2. Когда строка выбирается, а затем удаляется - становится ли другая строка выбранной строкой? Или вы собираетесь перейти в штат без выбранной строки?
  3. Если можно выбрать несколько строк, когда это происходит в нижней сетке данных? Показать последний выбранный? Или, если для этих нескольких объектов выбрано удаление, где устанавливается фокус? Или какой ряд выделен?

Я знаю, что есть много разных способов, которыми эти вещи могут быть обработаны, в зависимости от того, как написано приложение, но я задавался вопросом, есть ли какие-то стандартные лучшие практики? Или, если есть какие-то операции по умолчанию для того, как решетка данных WPF может обрабатывать эти случаи?

спасибо! Билл

1 Ответ

2 голосов
/ 10 марта 2010

Я думаю, что первые два соображения могут сводиться к предпочтению. Я предпочел бы, чтобы первая строка была выбрана, и ее детали отображались при первом открытии окна - это говорит мне, как пользователю, как работает это окно. Не уверен, как это работает в WPF, но в Windows Forms, datagridview предварительно выбрал верхнюю строку по умолчанию (и чтобы прекратить это делать, требуется хитрость).

Когда я удаляю строку, я лично предпочитаю переходить в состояние «нет выбранной строки», но у меня нет особых оснований для этого в терминах «вот почему вы должны это сделать». Мне просто нравится видеть пустое «подробное» представление и отсутствие выделения в качестве подтверждения того, что я успешно удалил выбранную строку.

Последний пункт, однако, мне кажется более четким. Если у вас есть отношение мастер / деталь в представлениях, вы не должны разрешать множественный выбор. Если вам нужно, чтобы пользователь мог выполнять действия с несколькими строками основного вида сетки, вы можете добавить несколько флажков к строкам, чтобы позволить пользователю выбрать подмножество строк для действия. Но для целей отображения деталей за раз должна быть выбрана только одна строка.

...