Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 11.08.2010
Сообщений: 84
1

События своего контрола

19.03.2011, 16:56. Показов 2348. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Создала свой контрол, добавила в панель инструментов, в новом проекте добавляю контрол на форму, пытаюсь контролу прописать событие клик, а он на него не реагирует! Что я не правильно сделала? Может контролу надо прописывать евенты изначально?
Вложения
Тип файла: rar fla.rar (198.7 Кб, 15 просмотров)
Тип файла: rar Flower.rar (838.6 Кб, 18 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.03.2011, 16:56
Ответы с готовыми решениями:

Управление событиями одного контрола через события другого контрола
Уважаемые форумчане помогите решить проблему. Есть два компонента на форме: checkBox и...

Действия внутри контрола (своего)
1. Как создать событие в своём собственном контроле? 2. Как сделать перемещение своего...

Создание своего контрола для подсветки синтаксиса
Как создать свой контрол похожий на TextBox чтобы в нём была подсветка синтаксиса html и без...

Ошибка при добавлении своего контрола на форму
Здравствуйте! У меня постоянно возникает одна и та же ошибка. Лично для меня не слишком...

15
0 / 0 / 0
Регистрация: 11.08.2010
Сообщений: 84
21.03.2011, 09:59  [ТС] 2
Ну, хоть кто нибудь помогите, пожалуйста!!!!!!!
0
153 / 113 / 25
Регистрация: 23.06.2008
Сообщений: 320
21.03.2011, 11:11 3
У тебя клик срабатывает не на твоем контроле, а на PictureBox-е
0
0 / 0 / 0
Регистрация: 11.08.2010
Сообщений: 84
21.03.2011, 11:31  [ТС] 4
А как мне добратся до контрола через picturebox?
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
21.03.2011, 12:01 5
блин, смог навесить в самом контроле событие на клик, но изменить его из другой формы не смог...о как...самому теперь интересно...пока не знаю....
0
0 / 0 / 0
Регистрация: 11.08.2010
Сообщений: 84
21.03.2011, 13:11  [ТС] 6
Вот и мне ни как не достучатся через picturebox! Вариант просто контролу backgraund вставить мне не подходит!
0
181 / 107 / 13
Регистрация: 22.03.2010
Сообщений: 456
21.03.2011, 13:46 7
Цитата Сообщение от pink-cake Посмотреть сообщение
Вот и мне ни как не достучатся через picturebox! Вариант просто контролу backgraund вставить мне не подходит!
Ваш код не смотрел, но могу предложить PerformClick() для принудительного вызова Click().
0
153 / 113 / 25
Регистрация: 23.06.2008
Сообщений: 320
21.03.2011, 15:09 8
Если у тебя UserControl больше не будет содержать другие контролы, то зачем тогда использовать такой подход?

Возьми унаследуйся от PictureBox
C#
1
2
3
4
5
6
7
public class MyPictureBox : PictureBox
{
       public MyPictureBox ()
       {
             //Загружай свой рисунок
       }
}
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
21.03.2011, 15:56 9
d0s'A, да, верно говоришь, тоже удивился...но почему от контрола в общем не проходит event к главной форме?...в самом контроле срабатывает, если навесить...
0
0 / 0 / 0
Регистрация: 11.08.2010
Сообщений: 84
21.03.2011, 16:52  [ТС] 10
Я создала свой контрол для дальнейшей его сериализации, просто picturebox с image ругается на картинку при сохранении, а юзерконтрол сохраняется, но я его никак не могу использовать!
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
21.03.2011, 17:08 11
pink-cake, ну на онЛоад и на онКлоуз у него ивенты сработали..
0
0 / 0 / 0
Регистрация: 11.08.2010
Сообщений: 84
22.03.2011, 21:35  [ТС] 12
Вот мне на американском форуме подсказали:
C#
1
2
3
4
5
6
7
public UserControl1()
    {
        InitializeComponent();
 
        this.pictureBox1.Click += (s,e) => {base.OnClick(e);};
        this.checkBox1.Click += (s,e) => {base.OnClick(e);};
    }
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
22.03.2011, 21:45 13
pink-cake, ну так ты это в самом контроле пропишешь? - у меня это получилось...я тоже там сделал protected override...но навеситься на этот ивент из основной формы не смог..
0
0 / 0 / 0
Регистрация: 11.08.2010
Сообщений: 84
22.03.2011, 23:15  [ТС] 14
Странно! у меня заработало!
Вложения
Тип файла: rar Копия Flower.rar (1.05 Мб, 15 просмотров)
0
153 / 113 / 25
Регистрация: 23.06.2008
Сообщений: 320
23.03.2011, 08:19 15
Цитата Сообщение от d0s'A Посмотреть сообщение
У тебя клик срабатывает не на твоем контроле, а на PictureBox-е
Помоему я так и описал проблему
В данном подходе, у тебя просто события от PictureBox идут на верх к твоему контролу....
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
23.03.2011, 08:48 16
так в чём проблема навесить клик на весь ЮзерКонтрол? меня это огорчает ((
0
23.03.2011, 08:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.03.2011, 08:48
Помогаю со студенческими работами здесь

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

Обработчик события динамически созданного контрола
Есть событие контрола panel_MouseMove, panel динамически создан и поэтому при создании он ссылается...

Можно ли в обработчике события контрола получить его имя?
Например, есть у нас обработчик TextChanged текстбокса tb. Задача получить значение "tb" для строки...

Подписать контрол на все события другого контрола того же типа
Возможно ли это сделать в коде? Button button1 = new Button(); button1.Click += button_Click;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru