Лучший графический интерфейс для списка текстовых элементов? - PullRequest
2 голосов
/ 13 июля 2011

У меня есть приложение WinForm. Нужен список пользовательских правил. Внутри каждого правила будет список текстовых элементов (также вводимых пользователем).

В настоящее время у меня есть сетка (SourceGrid). Каждый ряд - это правило. В каждом правиле у меня есть текстовое поле, позволяющее пользователю вводить несколько текстовых элементов (на экране показан пример нескольких регулярных выражений).

Textbox with a list of text items

У меня есть пользователь, который вводит символ табуляции, чтобы отделить каждый элемент. Некоторые правила могут содержать один элемент, а некоторые могут содержать 10 элементов. Вот почему я думаю, что проще использовать только одно текстовое поле и позволить пользователю самим разделять элементы.

Однако теперь я обнаружил, что символ табуляции довольно ограничен, потому что иногда элементы находятся на расстоянии 1 символа, а иногда и больше. (на скриншоте трудно отличить первый и второй элемент, просто по счастливой случайности).

Я думал о том, чтобы персонаж-табуляция делал два элемента на фиксированном расстоянии друг от друга. Нет, это невозможно. Я не хочу использовать другие символы-разделители, потому что это делает все это менее читабельным. Я также не хочу кодировать, чтобы динамически создавать больше столбцов. Я думал об этих полях IP-адресов для входа пользователя, но они не являются встроенными и не могут быть разными по ширине.

Я хочу спросить, есть ли лучший способ представить это без кодирования элемента управления с нуля? Или можно использовать специальный более широкий пробел в качестве разделителя для предметов? Спасибо.

1 Ответ

1 голос
/ 16 июля 2011

Вы можете использовать ЛЮБУЮ последовательность символов пробела между элементами в качестве разделителя. Таким образом, пользователь может поставить любые пробелы (или вкладки). Затем вы можете проанализировать ввод и зафиксировать эти разделители на фиксированной длине, если хотите. Это простое решение, если внутри каждого элемента нет пробелов.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...