【问题标题】:SelectedIndexChanged not firing in asp.net usercontrolSelectedIndexChanged 未在 asp.net 用户控件中触发
【发布时间】:2011-05-17 14:20:34
【问题描述】:

.net 4.0、ASP.net、vb.net。

我有一个使用 obout 组合框的用户控件。 obout 是一个级联组合框,它有 3 个级别。当它从组合框的第三级选择某些东西时,它应该触发一个 selectedIndexChanged 事件。这发生在我第一次选择用户控件时。问题是如果我想回去选择不同的东西。 selectedIndexChanged 不会触发。我已经设置了断点和

AddHandler ComboBox3.SelectedIndexChanged, AddressOf ComboBox3_SelectedIndexChanged

就像我第一次选择用户控件时一样运行。但是 selectedIndex 不会触发第二次。想知道我做错了什么。

这里是未触发的 selectedIndexChanged

Sub ComboBox3_SelectedIndexChanged(ByVal sender As Object, ByVal e As ComboBoxItemEventArgs)
    Dim Oc As New Dempsey.ClassIndex_Controller
    Dim O As New Dempsey.ClassIndex
    oClassIndexs = Oc.GetClassIndexData(CInt(ComboBox1.SelectedValue))
    For Each O In oClassIndexs
    Next
    ClassSearchResults = o
    RaiseEvent myClassificationSearch(oClassIndexs, e)
End Sub

我将添加您可能希望看到的任何其他代码......但不想让帖子太长。

谢谢 香农

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 更多信息.. 如上所述,这是一个级联组合框。因此,combobox1 的值为 1、2、3,Combobox 2 会根据您在 combobox1 上选择的内容对其数据进行过滤。

嗯.. 我注意到,如果我第一次在组合框 1 中选择 1,事情就会按预期工作。如果在第二轮中我在 combobox1 中选择了 1 以外的内容,则触发事件。但是,如果我在第二轮通过的组合框 1 中选择 1,则该事件不会触发。

这不是我需要它工作的方式,因为它可能是第二次通过,我需要在组合框 1 中选择相同的值,但在组合框 2 中选择不同的值。知道我能做些什么来解决这个问题......因为它似乎正在按应有的方式工作。

我在上面提到过.. 但我使用的是 Obout 组合框控件 谢谢

【问题讨论】:

    标签: asp.net vb.net selectedindexchanged obout


    【解决方案1】:

    我怀疑,当您的下拉选择发生变化时,您的下拉列表会再次出现在某个地方 binded 中,可能是在 page load 事件中,它失去了触发 SelectedIndex Changed 事件的机会。

    【讨论】:

    • 好的.. 不太确定。 addhandler 被添加到用户控件的页面加载事件中。当我单步执行代码时,我在 addhandler 处放置了一个断点。它在第二次通过用户控件时被触发。你有什么其他想法或者我没有正确理解你
    猜你喜欢
    • 1970-01-01
    • 2016-03-07
    • 2010-10-08
    • 1970-01-01
    • 2018-05-31
    • 2018-09-15
    • 2010-12-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多