If the action should only happen when the user selects an item, then the SelectedIndexChange is the wrong event to handle. You should be handling the ChangeCommited event as JM points out. I've used the approach of waiting to add the handlers until after some other stuff happens, but this becomes just another thing to make sure is right when making future changes. Using the correct event for the job at hand is a better approach.
2 cents.