• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1025
  • Last Modified:

[VB.NET] TreeView event SelectedNodeChange fires twice

On a webpage I have a TreeView which works together with a DetailsView (for details about the selected item in the TreeView) and a GridView (to display a list of child records for the selected item in the TreeView).

To be able to update the DetailsView and the GridView when the selection changes in the TreeView, I trap the SelectedNodeChange event for the TreeView.

Now it turns out that this SelectedNodeChange event is always fired twice, and thus the DetailsView and the GridView are populated twice as well.

What might be the reason for this double event firing?

Protected Sub wsTreeView_SelectedNodeChange(ByVal sender As TreeView, ByVal e As EventArgs) Handles wsTreeView.SelectedNodeChanged
 
        ' refill GridView for newly selected TreeView branche
        wsTreeGridView.ResetFilter()
        FillTreeGrid(sender.SelectedValue, False)
 
        ' bind DetailsView again in read-only mode
        wsTreeDetailsView.ChangeMode(DetailsViewMode.ReadOnly)
        wsTreeDetailsView.PrimaryKeyValue = Me.SelectedTreeItemID
        BindCategoryDetailsView()
 
    End Sub

Open in new window

0
MarjaR
Asked:
MarjaR
2 Solutions
 
NikkoliCommented:
Do you register the event somewhere else in your code?

Having "Handles wsTreeView.SelectedNodeChanged" takes care of registering, so if you also create an event handler you end up with 2 registrations and therefore 2 events.
0
 
rdoran0928Commented:
If you have OnSelectedNodeChanged in your .aspx file like the following, the event will fire twice:

        <asp:TreeView ID="wsTreeView" runat="server" OnSelectedNodeChanged="wsTreeView_SelectedNodeChange">
        </asp:TreeView>
0
 
MarjaRAuthor Commented:
You both hit the nail right on the nose. Thank you!
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now