Answer-ID
  • Întrebări
  • Tag-uri
  • Categorii
Notificări
Recompense
Înregistrare
După înregistrare, veți primi notificări despre răspunsurile și comentariile la întrebările DVS.
Logare
Dacă aveţi deja un cont, autentificaţi-vă pentru a verifica notificările noi.
Aici vor fi recompensele pentru întrebările, răspunsurile și comentariile adăugate sau modificate.
Mai mult
Sursă
Editează
Rob Cooper
Rob Cooper

ASP.NET UserControl și DefaultEvent

Contur

OK, am Google și am așteptat deja o mare grăsime NU! Dar m-am gândit că ar trebui să o întreb deoarece știu uneori că poate fi o mică bijuterie a cunoașterii care se ascunde în capetele oamenilor ^ ^

Lucrez în anumite exerciții într-o carte de studiu, iar acest exercițiu este Controlul utilizatorului. Am cobbled un control și aș dori să setați DefaultEvent pentru el (făcând acest lucru pentru controalele anterioare), așa că atunci când am dublu-clic pe el, evenimentul implicit creat este ceea ce am specificat-o să fie.

NOTE: This is a standard User Control (.ascx), NOT a custom rendered control.

Codul curent

Here is the class & event definition:

[System.ComponentModel.DefaultEvent("OKClicked")]
public partial class AddressBox : System.Web.UI.UserControl
{
    public event EventHandler OKClicked;

Rezultatul curent

Acum, când dau dublu clic pe control când se află pe o pagină ASPX, se creează următoarele:

    protected void AddressBox1_Load(object sender, EventArgs e)
    {

    }

Nu exact ceea ce mă așteptam! Deci, întrebarea mea:

Este posibil să definiți un DefaultEvent pentru un UserControl? Este un hack? Dacă nu este acceptat, există vreun motiv?


Side Note: How do we put underscores in code? I cant seem to put and escape char in?

5 2008-08-14T16:14:36+00:00 2
Programare
attributes
asp.net
c#
user-controls
Comentarii la întrebare (0)
Darren Kopp
14 august 2008 в 8:42
2008-08-14T20:42:13+00:00
Mai mult
Sursă
Editează
#11307

Iată un răspuns posibil , fără testare (cum a făcut Martin).

În reflector, veți vedea că DefaultEventAttribute permite să fie moștenit. În reflector, vedeți că clasa UserControl are evenimentul implicit setat la evenimentul Încărcare.

Deci, motivul posibil este că, deși decorați controlul utilizatorului cu evenimentul implicit al OKClick, VS ar putea să creadă că evenimentul implicit este încărcat, deoarece este moștenit de la UserControl, al cărui eveniment implicit este Load.

Doar un nivel înalt de ghicit la ce s-ar putea întâmpla.

0
0
Comentarii (0)
Rob Cooper
15 august 2008 в 12:22
2008-08-15T12:22:42+00:00
Mai mult
Sursă
Editează
#12070

OK, am verificat acest lucru, Moștenind de la WebControl mai degrabă decât UserControl .. Toate au lucrat bine.

Se pare că Darren Kopp ia coroana pentru asta! Vă mulțumim pentru intrare!

0
0
Comentarii (0)
Adăugati o întrebare
Categorii
Toate
Tehnologii
Cultură
Viață / Artă
Stiință
Profesii
Afaceri
ID
KO
RU
© Answer-ID 2021
Sursă
https://stackoverflow.com
în cadrul licenței cc by-sa 3.0 cu atribuire