Как сделать Delphi-подобные фреймы в C #? - PullRequest
9 голосов
/ 26 февраля 2010

Немного предыстории: я программист на Delphi, переучивающий C # (изначально изученный в школе, до недавнего времени почти не касался), и пытаюсь перенести некоторые из моих концепций Delphi.

В настоящее время мне нужно создать приложение, которое может использовать данные из переменного списка похожих элементов управления данными в зависимости от местоположения, потребностей и т. Д., И для отображения этой информации в Delphi я просто использовал бы прокрутку коробка и рамы. Поле прокрутки, которое я могу легко заменить классом панели C #, но я не нахожу ничего, что я мог бы использовать, чтобы рассказать мне, как создать класс фрейма для использования внутри панели. Все, что я могу найти, это кое-что для веб-разработки.

Может кто-нибудь указать мне хорошее направление для изучения эквивалента фрейма C #? Спасибо.

EDIT:

Для программистов, не относящихся к Delphi, фрейм - это элемент управления, похожий на форму, который позволяет размещать на нем другие элементы управления (кнопки, поля, сетки и т. Д.), А затем фрейм используется как сам элемент управления в форме для уменьшения повторное использование кода, поскольку все фреймы имеют схожую функциональность и упрощают разработку. Более подробное описание (возможно, лучше) см. В about.com's или Delphi Basics описаниях.

Ответы [ 5 ]

6 голосов
/ 26 февраля 2010

EDIT:

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

Звучит как пользовательский элемент управления для меня.

Вот несколько уроков:

WPF

WinForms

5 голосов
/ 26 февраля 2010

Используя Delphi и .Net, я думаю, UserControl является эквивалентом. Это контейнер, в который вы можете добавлять элементы управления, а затем добавлять их в другие формы проекта.

5 голосов
/ 26 февраля 2010

Вам необходимо создать пользовательский элемент управления, расширяющий класс Panel, а затем повторить этот пользовательский элемент управления.

1 голос
/ 26 февраля 2010

Любая панель обеспечивает ту же функциональность, что и Delphi's Frame (композит, содержащий другие элементы управления).

Чтобы инкапсулировать и повторно использовать панель с определенными дочерними элементами, вам нужно написать собственный класс (пользовательский элемент управления (как упоминалось в Payton) в WinForms или, что еще лучше, новый элемент управления в WPF).

Я также программировал на Delphi много лет назад, и я настоятельно рекомендую использовать WPF, а не WinForms, особенно если вы знакомы с HTML или XML или вам нужно писать динамические или ориентированные на данные приложения.

1 голос
/ 26 февраля 2010

Я не знаком с Delphi, но то, что вы описываете, звучит немного похоже на WPF FlowDocument или один из связанных элементов управления.

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