动态加载控件中的 asp .net 事件 (Telerik)

发布于 2024-07-24 23:09:58 字数 1233 浏览 5 评论 0原文

我有一个关于这些控件中动态加载的控件和事件的问题(在我的情况下单击按钮:)

这是我得到的一个 RadPanelBar 一个按钮和隐藏输入:

              <telerik:RadPanelBar ID="languagesPanelBar" runat="server">
              </telerik:RadPanelBar>
              <asp:Button ID="Button1" runat="server" OnClientClick="funcation(){document.getElementById('someHiddenField').value='true';}" />
              <input id="someHiddenField" type="hidden" runat="server" value="false" />

比在 PageLoad 事件上我检查 someHiddenField 值是否为真,如果确实,具有动态加载控件的新项目已添加到 RadPanelBar :

        void Page_Load(object sender, EventArgs e)
        {
           if(someHiddenField.Value == "true")
             {
                RadPanelItem newRootItem = new RadPanelItem();
                RadPanelItem newChildIteam = new RadPanelItem();
                Control ctrl = LoadControl("testControl.ascx");
                ctrl.ID = "testCtrl";
                newChildItem.Controls.Add(ctrl);
                newRootItem.Items.Add(newChildItem);
                languagesPanelBar.Items.Add(newRootItem);
              }

    }

testControl.ascx 中有一个按钮,但由于某种原因,动态创建控件时 onClick 事件不会触发。
我很高兴听到任何有关如何解决此问题的建议:)

提前谢谢您!

I've a question about dynamically loaded controls and events in these controls ( button click in my case :)

Here is what i got one RadPanelBar a Button and hidden input:

              <telerik:RadPanelBar ID="languagesPanelBar" runat="server">
              </telerik:RadPanelBar>
              <asp:Button ID="Button1" runat="server" OnClientClick="funcation(){document.getElementById('someHiddenField').value='true';}" />
              <input id="someHiddenField" type="hidden" runat="server" value="false" />

than on PageLoad event i check if someHiddenField value is true or not, if it's true the new item with dynamically loaded control is added to RadPanelBar :

        void Page_Load(object sender, EventArgs e)
        {
           if(someHiddenField.Value == "true")
             {
                RadPanelItem newRootItem = new RadPanelItem();
                RadPanelItem newChildIteam = new RadPanelItem();
                Control ctrl = LoadControl("testControl.ascx");
                ctrl.ID = "testCtrl";
                newChildItem.Controls.Add(ctrl);
                newRootItem.Items.Add(newChildItem);
                languagesPanelBar.Items.Add(newRootItem);
              }

    }

testControl.ascx have a button in it, but for some reason the onClick event wont fire when control is created dynamically.
Would be glad to hear any suggestion how to solve this problem :)

Thank You in Advance !

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

奶气 2024-07-31 23:09:58

将控件创建代码移至 Page_Init 事件。

Move controls creation code to Page_Init event.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文