Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как привязать обработчик на динамический контрол? 
:(
    Опции темы
cosamia
Дата 31.3.2006, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 11.5.2005

Репутация: нет
Всего: нет



Как привязать обработчик на динамически созданный контрол?

если можно, пример плз .

PM   Вверх
Exception
Дата 31.3.2006, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 9
Всего: 186



Что как? По-обычному smile
Код

TextBox myDynamicTextBox = new TextBox;
//...
myDynamicTextBox.Click += new EventHandler(MyClickEventHandler);
//...

void MyClickEventHandler(object sender, EventArgs e)
{
   // код по обработке здесь
}

PM   Вверх
cosamia
Дата 31.3.2006, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 11.5.2005

Репутация: нет
Всего: нет



с обычной кнопкой понятно. а вот если у меня чекбокс и надо различить какой чекбокс был чекнут то как быть? у кнопки можно было командаргумент установить, а у чекса что установить чтобы однозначно знать у кого произошел чек?
PM   Вверх
arilou
Дата 31.3.2006, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 6
Всего: 61



cosamia, в обработчике события Click есть два параметра (object sender, EventArgs e). В sender у тебя будет ссылка на checkbox.


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
cosamia
Дата 31.3.2006, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 11.5.2005

Репутация: нет
Всего: нет



а поточнее можно? с примером желательно как из сендера вытащить ее?
Добавлено @ 18:13
хотя похоже сделал уже...
PM   Вверх
Exception
Дата 31.3.2006, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 9
Всего: 186



Просто преобразуй sender к типу CheckBox и сравнивай Text.
Добавлено @ 21:07
Ну или Name smile
PM   Вверх
Ch0bits
Дата 31.3.2006, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Python Dev.
****


Профиль
Группа: Завсегдатай
Сообщений: 2124
Регистрация: 21.2.2005
Где: Казань

Репутация: нет
Всего: 62



Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        /// <summary>
        /// Кнопка "Создать много чекбоксов!"
        /// </summary>
        private void button1_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < 10; i++)
            {
                CheckBox ch = new CheckBox();
                ch.Top = i * 25;
                ch.Name = "Checkbox " + i.ToString();   // Тут задаём имя
                ch.Text = "Привет, я " + ch.Name;
                ch.Click += new EventHandler(ch_Click); // Добавляем обработчик события OnClick
                this.Controls.Add(ch);                  // Добавляем на форму
            }
        }

        void ch_Click(object sender, EventArgs e)
        {
            CheckBox ch = sender as CheckBox;           // ch - это ссылка на sender приведённый к типу CheckBox 
            MessageBox.Show(ch.Text+"\n"+ch.Name);
        }
    }
}

PM WWW   Вверх
mr.DUDA
Дата 1.4.2006, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 5
Всего: 232



Ch0bits, тут немного другое, ASP.NET smile ...


--------------------
user posted image
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0581 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.