views:

16

answers:

0

I have a combobox, that I populate from a web service:

public Configure()
    {
        InitializeComponent();
        WebServiceSoapClient ws = new WebServiceSoapClient();
        ws.GetTypesCompleted += new  EventHandler<GetTypesCompletedEventArgs>(OnGetTypeCompleted);
        ws.GetTypesAsync();
    }

    void OnGetTypeCompleted(object sender, GetTypesCompletedEventArgs e)
    {
        if (e.Result != null)
        {
            List<CodeTableItem> source = e.Result.ToList<CodeTableItem>();
            lstType.ItemsSource = source;
            lstType.SelectedIndex = -1;

        }
    }

So when I set the ItemSource property, SelectionChanged event gets fired with SelectedIndex = 0, but user hasn't made this selection yet and I need this list to have no selected value, so I'm setting SelectedIndex to -1, as you can see. As a result, SelectionChanged is called twice.

Can I make it be called only when user selects the item? Thanks!

I'm using Silverlight 3 and VS 2008

related questions