In the ComboBox.SelectionChanged event I want to know who changed the ComboBox value, the user or some other code.

At first I checked if cmbBox.IsDropDownOpen is true. But this is false if the user changed the ComboBox with the keyboard.

Then I thought to check if it focused. Silverlight ComboBox doesn't have a IsFocused property so I saved the state in the cmbBoxGotFocus and cmbBoxLostFocus event handlers:

```
    private bool cmbBox_isFocused = false;
    private void cmbBox_GotFocus(object sender, RoutedEventArgs e)
    {
        cmbSalesPerson_isFocused = true;
    }

    private void cmbBox_LostFocus(object sender, RoutedEventArgs e)
    {
        cmbSalesPerson_isFocused = false;
    }

```

Unfortunately this doesn't work either because there is some strange behaviour I don't understand: when the user clicks on the ComboBox the 2 events are fired one after the other so the bool remains false.