2013-08-22 5 views
5

У меня массивный пользовательский интерфейс, который я разрабатываю. Как хочет мой работодатель, есть не менее 100 ярлыков. Теперь я всегда думал, что в таких случаях разбить пользовательский интерфейс на более мелкие пользовательские элементы управления - это идеальный способ. Однако кто-то недавно сказал мне, что пользовательские элементы управления действительно предназначены только для повторного использования кода. Какова фактическая предлагаемая практика для этого?Когда использовать пользовательские элементы управления

EDIT

Готовая форма будет выглядеть следующим образом:

enter image description here

Теперь я использую WPF для пользовательского интерфейса, и я имею в виде нарушения этого на более мелкий биты.

+0

Что вы имеете в виду, «Есть по меньшей мере 100 ярлыков»? Ярлыки уже являются элементами многократного использования, и большое количество из них не означает, что существует потребность в настраиваемом элементе управления. – Vik

+0

@RichardEv: Я опубликовал изображение пользовательского интерфейса. Там много ярлыков, потому что именно так хочет мой работодатель. Я подумывал разбить его примерно на 10-14 единиц контроля. – MyCodeSucks

+0

@Vik: Я имею в виду, что пользовательский интерфейс будет содержать «не менее 100 ярлыков». На самом деле это намного больше. – MyCodeSucks

ответ

2

Основываясь на изображении я вижу некоторые повторы, каждый из этих повторений может быть обычай UserControl

Но это зависит от юзабилити проще написать собственный UserControl так сделать, но если это приведет к уменьшению читаемости ваш код, и это также добавляет дополнительные сложности не делает это

вот примером того, что может быть

на зеленом отдельный UserControl является возможной полезной инкапсуляцией логики
в оранжевых, возможно, нуждается в некоторых не рынка (дон «Знает достаточно о вашем программном обеспечении)
красных из них являются, возможно, основаны на стажер использовании (от визуальной части они являются повторами, поэтому должен обычаем UserControl)

enter image description here

0

Поскольку ваш пользовательский интерфейс доступен только для чтения, я бы предложил использовать grid.

0

Вы новичок в WPF? Чтобы разбить вид на биты, WPF предлагает вам CustomControls и UserControls. Это две очень похожие вещи, но совершенно отличные друг от друга. CustomControls - это кнопки, ярлыки, текстовые поля, DataGrids ... и т. Д. Они в основном простые автономные элементы управления. UserControls - это группы автономных элементов управления, предназначенные для использования, например, Button и ComboBox рядом друг с другом, поэтому пользователь может выбрать что-то в ComboBox и подтвердить это, нажав кнопку.

Если вы хотите отображать данные из базы данных, я предлагаю вам DataGrid, который даст вам похожий на стол вид с строками и столбцами и все такое. Если вы хотите разместить несколько кнопок рядом с DataGrid, на которые пользователь может щелкнуть, чтобы вставить новую строку или отредактировать определенную ячейку, я предлагаю вам обернуть все это с помощью UserControl, который можно повторно использовать в других местах, где вы должны отображать и изменить данные из базы данных тоже.

0

Вы должны использовать datagrid и можете настроить его шаблон для рендеринга отдельных ячеек как Textblock (более легкая версия Label) с точки зрения рендеринга. Основное различие между Textblock и Label - это очень незначительные вещи, такие как ключи доступа и поведение отключенного состояния. Но из иерархии объектов WPF - Textblocks намного легче. Но помимо этого - с точки зрения вашего работодателя - как только вы настроили шаблон сетки и визуализировали их (так как они выглядят как текстовые блоки/метки) - у вашего работодателя не должно быть проблем.

Кроме того, как кто-то предложил выше - если вы хотите, чтобы логически разбить разделы интерфейса, так как они, возможно, приезжающие из другой таблицы в БД - то Пользовательские элементы управления является путь (для сопровождения кода)

Пусть я знаю, если вы ищете дополнительные технические детали или нуждаетесь в технической помощи.

0

Там нет ничего плохого в принятии и использование пользовательских элементов управления или пользовательских элементов управления или определение некоторых шаблонов данных, которые будут использоваться повторно в зависимости от того, как организованы ваши данные.

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

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

Смежные вопросы