C # + Пользовательская графика на элементах управления? - PullRequest
1 голос
/ 08 апреля 2009

Мне просто интересно, есть ли способы создания моих собственных пользовательских элементов управления winforms? Я грабил Visual Studio 2008, сейчас пытаюсь создать несколько приложений на c #. И графический интерфейс в конечном итоге выглядит ужасно из-за стандартных ограничений winforms.

И я заметил, что, например, я могу добавлять изображения к кнопкам, но при этом нет эффекта парения. Или эффект наведения делает всю область кнопки серой. Я не хочу ничего из этого, я просто хочу либо создать свою собственную графику для элементов управления, либо найти уже имеющиеся бесплатные (возможно, с открытым исходным кодом) элементы управления.

Есть хоть какой-нибудь свет на это? :)

Ответы [ 6 ]

2 голосов
/ 08 апреля 2009

Вы можете написать законченные элементы управления Winforms с нуля, выполняя всю рисование и обработку ввода самостоятельно - вы просто создаете класс, полученный из 'Control', и продолжаете его.

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

Вот хорошее место для начала: http://msdn.microsoft.com/en-us/library/6hws6h2t.aspx

0 голосов
/ 08 апреля 2009

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

Как WinForm более кроссплатформенный, и вы видели, как уродливый WinForms выглядит под моно на Mac, когда он рисует через X11.

Если вам нужен стиль и кроссплатформенность, выберите Flex или Silverlight, так как вы уже знаете WPF, я бы пошел по маршруту Silverlight.

Он кроссплатформенный и обладает всеми прелестями WPF, но за счет снижения функциональности из коробки.

0 голосов
/ 08 апреля 2009

Некоторая очень полезная информация о пользовательских графических изображениях вы найдете там (bobpowell) . И некоторые бесплатные, но приятные на вид пользовательские элементы управления там (Componentfactory) .

0 голосов
/ 08 апреля 2009

Да. Вы можете создавать свои собственные элементы управления. Это называется пользовательский контроль. Просто выберите Add-> и User Control.

WPF - хорошая альтернатива, если вы хотите, чтобы форма окон выглядела модно.

0 голосов
/ 08 апреля 2009

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

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

0 голосов
/ 08 апреля 2009

Во-первых - может быть более прагматично смотреть на WPF или размещать некоторые элементы WPF внутри winforms (что поддерживается - , например, ) Кроме этого - вы можете делать все свои собственные рисунки, если хотите; но работы много.

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