asp.net コントロールを使用しないユーザー コントロール (例: foo.ascx) があります。ボタンクリックイベントなど、依存できるものはありません。したがって、次のオプションはありません。
void Page_Load(object sender, EventArgs e) {
MyButton.Click += MyButton_Click; // <-- I can't do this, there are no asp.net controls
}
void MyButton_Click(object sender, EventArgs e) {
OnItemSelected("foo"); // fire my custom event
}
ItemSelectedEvent を発生させる必要があります。メソッドとイベントをそのようにする方法を知っています
public event EventHandler<MyEventArgs> ItemSelected;
void OnItemSelected(string selectedItem) {
var tmp = ItemSelected;
if (tmp != null)
tmp(this, new MyEventArgs { SelectedItem = selectedItem });
}
イベントを発生させていることを示すためにクライアント サイトで必要な JavaScript ItemSelected
(つまり、サーバーに正しくポスト バックする方法) と、その情報をキャプチャしてOnItemSelected
メソッドを呼び出すためにコード ビハインド ページに実装する必要があるものは何ですか?