Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > WPF, UWP, WinRT, XAML
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.04.2013, 21:57   #1
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию WPF Custom Control Library или как написать свой контрол с нуля

Здравствуйте! Передо мной стоит следующая задача: написать TreeListView Control, который будет использоваться в приложении по работе с базой данных. Никаких коммерческих целей я не преследую, чисто альтруистическая основа для облегчения труда на работе. Перерыв весь рускоязычный и англоязычный интернет, я не нашел ни одного внятного объяснения. Пожалуйста, сразу попрошу не предлагать codeproject. Платные варианты исходников тоже отменяются, так как стоят бешеных денег. Мне нужна информация, и может быть вы могли бы помочь.
Я пришел к выводу, что TreeListView - собственное название класса, объединяющего TreeView and ListView Controls, я должен наследовать от ItemsControl. В свою очередь TreeListItem я должен наследовать от Control. Почему именно так. Для меня критична произодительность и ограничены ресурсы. Я не хочу тащить за новым классом кучу ненужных для работы библиотек. Другими стъловами, мне нужно написать контрол с нуля с минимальным функционалом. Подскажите пожалуйста узконаправленную литературу по написанию контролов или что-нибудь в этом духе. А может быть и советами поможете. Буду признателен.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 07.04.2013, 23:03   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

в впф контролы пишутся в редких случаях, как правило хватает за глаза того что есть
eval вне форума Ответить с цитированием
Старый 07.04.2013, 23:35   #3
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

eval, это самый простой выход из всех ситуаций Давайте придумаем то, что посложнее. Вот, что у меня получилось:
Код:
    public class TreeListViewItem : Control
    {
        #region Content
        public static readonly DependencyProperty ContentProperty = 
            DependencyProperty.Register("Content", typeof(object), typeof(TreeListViewItem),
            new FrameworkPropertyMetadata(null, 
                FrameworkPropertyMetadataOptions.AffectsRender |
                FrameworkPropertyMetadataOptions.AffectsParentMeasure));
        [Bindable(true)]
        public object Content
        {
            get { return (object)GetValue(ContentProperty); }
            set { SetValue(ContentProperty, value); }
        }
        #endregion

        static TreeListViewItem()
        {
            DefaultStyleKeyProperty.OverrideMetadata(typeof(TreeListViewItem), new FrameworkPropertyMetadata(typeof(TreeListViewItem)));
        }

        public TreeListViewItem()
        {
        }


    }
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 08.04.2013, 00:13   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

оно уже есть
http://msdn.microsoft.com/en-us/libr...ntcontrol.aspx
eval вне форума Ответить с цитированием
Старый 08.04.2013, 09:06   #5
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Цитата:
оно уже есть
Я вкурсе. Я недопечатал вчера, сайт не открывало вчера. В любом случае, я пришел к выводу, что очередной раз зря обратился за помощью, и как всегда за несколько часов, как найду ответ сам. Решил использовать ILSpy.exe для просмотра библиотек WPF. Разобраться в устройстве уже написанных контролов, а потом писать свой.
А вам, как погляжу, заняться не чем, кроме как постить бессмысленные посты.
Всего доброго.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 08.04.2013, 09:28   #6
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

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


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
WPF пользовательский контрол D][mon WPF, UWP, WinRT, XAML 0 22.02.2013 20:59
как написать открытый торрент трекер с нуля на php roulis2844sasha PHP 0 25.03.2012 12:59
Как свой IP поменять или скрыть myshonok Свободное общение 8 11.12.2009 21:54
Как написать функцию с нуля? VintProg Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 7 04.08.2009 08:09
обновление в блоге - Близкие контакты третьего вида с Visual Foxpro (или как написать свой провайдер для Pblog Обсуждение статей 0 24.04.2009 20:50