RaisePostBackEvent nu arde

Am un control particularizat care implementează IPostBackEventHandler. Unele evenimente la nivelul clientului invocă __doPostBack (controlID, eventArgs).

Controlul este implementat în două controale diferite de utilizator. Într-un singur control, RaisePostBackEvent este declanșat pe partea de server când se invocă __ doPostBack . În celălalt control, RaisePostBackEvent nu este invocat niciodată. Am verificat parametrul __ EVENTTARGET si se potriveste cu ID-ul clientului de control ... in cazul in care altfel ar trebui sa ma uit pentru a depana acest lucru?

0
fr hi bn

2 răspunsuri

Există multe moduri în care acest lucru se poate desprinde. Adăugați controlul la pagina dinamic în codul din spate? În cazul în care, de multe ori, identificatorul dvs. unic poate fi dezactivat - chiar dacă id-urile clientului sunt egale. Aveți un eșantion de cod care ar putea demonstra ce faci?

0
adăugat
(Mutat pentru a comenta) - Mă simt cam stupid ... a fost o problemă simplă - m-am gândit că unicul cod de control a corespuns __EVENTARGS, dar din cauza unei jaloane JavaScript din partea mea, a avut un $ în cazul în care o subliniere ar fi trebuit să fi fost . A fost o identitate extrem de lungă, atât de ușor de trecut cu vederea.
adăugat autor Rex M, sursa

Verificați dublu că este într-adevăr o derivare a clasei UserControl, nu a celei WebControl Acest lucru mi-a surprins de mai multe Saui. Dacă trebuie să utilizați WebControl pentru styling, trebuie să lăsați controlul să implementeze INamingContainer. (Nu vă faceți griji, o interfață de marker)

Asa de..

public class MyControl : UserControl {}

Sau

public class MyControl : WebControl, INamingContainer {}
0
adăugat