[英]SelectedIndexChanged in Custom UserControl not firing
我已經收到一個舊的.Net 1.1應用程序,上面寫着“使其再次運行”。 我現在正在遷移這只老野獸。
開發人員創建了一個自定義控件,其中包含一個html表行<tr>
和4個<td>
元素。
現在里面有一個<asp:Dropdownlist>
:
<asp:DropDownList id="edit_jahr" runat="server"
AutoPostBack="True"
OnSelectedIndexChanged="edit_jahr_SelectedIndexChanged">
</asp:DropDownList>
方法edit_jahr_SelectedIndexChanged
看起來像這樣:
protected void edit_jahr_SelectedIndexChanged(object sender, System.EventArgs e)
{
JahrChangedEventArgs args = new JahrChangedEventArgs((int)ViewState["jahr"],Convert.ToInt32(edit_jahr.SelectedValue));
OnJahrChange(args);
this.Jahr=args.NeuesJahr;
}
當前的問題是:OnSelectedIndexChanged事件沒有觸發,因此沒有添加新的Usercontrol,因此在頁面上運行的代碼將失敗。
請指出正確的方向。 為什么這不起作用,我該如何解決。
在沙盒解決方案中重建控件后,我終於找到了一種到達EventHandler的方法。
我必須在OnLoad方法中注冊SelectedItemChanged事件:
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
edit_jahr.SelectedIndexChanged += new EventHandler(edit_jahr_SelectedIndexChanged);
}
老實說,我不為什么。 如果有人可以回答並詳細解釋這個問題,我願意接受它作為回答,而不是我自己的帖子。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.