Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
Ivanjs
0 / 0 / 0
Регистрация: 17.04.2018
Сообщений: 181
1

Обработчик событий

20.06.2018, 20:56. Просмотров 362. Ответов 4
Метки нет (Все метки)

Используя Visual Studio, создайте проект по шаблону ASP . NET Empty Web Site . Добавьте страницу Default . aspx в корень директории сайта. Сделайте обработчики на события Init, Load и PreRender. В коде каждого обработчика выведите в тело страницы сообщение и время, когда обработчик сработал.

В выводе отобразилась только работа метода PreRender.
Объясните, пожалуйста, в чём ошибка.

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<%@ Page Language="C#" AutoEventWireup="false" CodeBehind="002_EventHandling2.aspx.cs"
    Inherits="ASP.NET_Page.EventHandling2" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Обработка события 2</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Label ID="Label1" runat="server" />
    </div>
    </form>
</body>
</html>
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace ASP.NET_Page
{
    public partial class EventHandling2 : System.Web.UI.Page
    {
        public EventHandling2()
        {
            this.Load += new EventHandler(EventHandling2_Load); 
            this.Init += new EventHandler(EventHandling3_Init);
            this.PreRender += new EventHandler(EventHandling4_PreRender);
        }
 
        void EventHandling2_Load(object sender, EventArgs e)
        {
            Label1.Text = "Сработал обработчик события Load " + DateTime.Now.ToLongTimeString();
        }
 
        void EventHandling3_Init(object sender, EventArgs e)
        {
            Label1.Text = "Сработал обработчик события Init " + DateTime.Now.ToLongTimeString();
        }
 
        void EventHandling4_PreRender(object sender, EventArgs e)
        {
            Label1.Text = "Сработал обработчик события PreRender " + DateTime.Now.ToLongTimeString();
        }
    }
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2018, 20:56
Ответы с готовыми решениями:

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

C# NumericUpDown/обработчик событий/
Знатоки С++ и С# подскажите пожалуйста как будет выглядеть подобный обработчик событий на С#? если...

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

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

Обработчик событий
Всем привет! Интересная задача, очень хотелось бы разобраться в чем проблема. Помогите,...

4
OwenGlendower
Супер-модератор
Эксперт .NET
10711 / 9159 / 3900
Регистрация: 17.03.2014
Сообщений: 18,320
Записей в блоге: 1
Завершенные тесты: 2
20.06.2018, 21:16 2
Ivanjs, оператор = заменяет старое значение новым. В данном случае нужно использовать оператор +=.

О том как разделить разные сообщения подумай самостоятельно.
1
Ivanjs
0 / 0 / 0
Регистрация: 17.04.2018
Сообщений: 181
21.06.2018, 06:55  [ТС] 3
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace ASP.NET_Page
{
    public partial class EventHandling2 : System.Web.UI.Page
    {
        public EventHandling2()
        {
            this.PreRender += new EventHandler(EventHandling4_PreRender); 
            this.Load += new EventHandler(EventHandling2_Load);
            this.Init += new EventHandler(EventHandling3_Init);
            
        }
 
        void EventHandling2_Load(object sender, EventArgs e)
        {
            Label1.Text += " <br/> Сработал обработчик события Load " + DateTime.Now.ToLongTimeString() + "<br/>"; 
        }
 
        void EventHandling3_Init(object sender, EventArgs e)
        {
            Label1.Text += "Сработал обработчик события Init " + DateTime.Now.ToLongTimeString();
        }
 
        void EventHandling4_PreRender(object sender, EventArgs e)
        {
            Label1.Text += "Сработал обработчик события PreRender " + DateTime.Now.ToLongTimeString();
        }
    }
}
Добавлено через 37 минут
Объясните, пожалуйста, можно ли сделать подобное при помощи delegate?
0
OwenGlendower
Супер-модератор
Эксперт .NET
10711 / 9159 / 3900
Регистрация: 17.03.2014
Сообщений: 18,320
Записей в блоге: 1
Завершенные тесты: 2
21.06.2018, 12:32 4
Цитата Сообщение от Ivanjs Посмотреть сообщение
Объясните, пожалуйста, можно ли сделать подобное при помощи delegate?
В смысле? Здесь и так применяются делегаты. Или ты о анонинимых методах говоришь?
C#
1
this.PreRender += delegate(object sender, EventArgs e) { Label1.Text += "Сработал обработчик события PreRender " + DateTime.Now.ToLongTimeString(); };
1
sau
2117 / 1691 / 291
Регистрация: 22.07.2011
Сообщений: 6,431
Завершенные тесты: 1
21.06.2018, 12:37 5
Есть еще соглашения в именовании делегатов , достаточно обозвать метод в соответствии с соглашением , и явной подписки на события не потребуется.
Тобишь , для семантики EventHandling2_Load(object sender, EventArgs e) ,
определения вида new EventHandler(EventHandling2_Load); , не требуется , так же как и для остальных обработчиков , именованных подобным образам.
1
21.06.2018, 12:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.06.2018, 12:37

обработчик событий
доброго времени суток) подскажите как сделать обработчик событий типа Edit в котором нужно писать...

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

Обработчик событий | VB to C#
Пожалуйста, подскажите, как перенести данный код из VB в C# Private Sub Window_Loaded(sender As...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru