Frage

Ich habe ein benutzerdefiniertes Steuerelement, das IPostBackEventHandler implementiert.Einige clientseitige Ereignisse rufen __doPostBack(controlID, eventArgs) auf.

Die Steuerung ist in zwei verschiedenen Benutzersteuerelementen implementiert.In einem Steuerelement wird RaisePostBackEvent auf der Serverseite ausgelöst, wenn __doPostBack aufgerufen wird.Im anderen Steuerelement wird RaisePostBackEvent nie aufgerufen.Ich habe das überprüft __EVENTTARGET Parameter und es stimmt mit der ClientID des Steuerelements überein ...Wo sonst könnte ich nachsehen, um das Problem zu beheben?

War es hilfreich?

Lösung

Es gibt viele Möglichkeiten, wie das scheitern kann.Fügen Sie das Steuerelement dynamisch im Code dahinter zur Seite hinzu?Wenn dies der Fall ist, kann Ihre UniqueID häufig deaktiviert sein – auch wenn die Client-IDs gleich sind.Haben Sie ein Codebeispiel, das veranschaulichen könnte, was Sie tun?

Andere Tipps

Überprüfen Sie noch einmal, ob es sich tatsächlich um eine Ableitung der UserControl-Klasse und nicht um die WebControl-Klasse handelt.
Dieser hat mich schon oft überrascht.Wenn Sie WebControl für das Styling verwenden müssen, müssen Sie Ihr Steuerelement INamingContainer implementieren lassen.(Keine Sorge, es ist eine Markierungsschnittstelle)

Also..

public class MyControl : UserControl {}

Oder

public class MyControl : WebControl, INamingContainer {}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top