Solved

Silverlight ComboBox "SelectionChanged" Event

Posted on 2010-08-18
8
2,179 Views
Last Modified: 2013-11-12
Once again, I am new to Silverlight and trying my best to learn it quickly.  I have a basic form that has a comboBox (comboBox1 in the example).  This comboBox has items that are populated by a webservice, and that is working great.  I am used to ASPX pages where I can use the "SelectionChanged" event and it actually fires when the selection changes.  With Silverlight, the "SelectionChanged" event seems to fire on the inital load on the applicaiton as well.

Anyway, on the code behind example below, I am getting a null reference exception on line 4.  The compiler doesn't seem to know anything about the combobox.  How do I access the "SelectedIndex" property of the XAML ComboBox from the codebehind page?
private void comboBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            
            if (this.comboBox1.SelectedIndex != 0)
            {
                Service1SoapClient wRef = new Service1SoapClient();
                wRef.GetSiteDetailsCompleted += new EventHandler<GetSiteDetailsCompletedEventArgs>(wRef_GetSiteDetailsCompleted);
                string site = "MySite";
                //wRef.GetSiteDetailsAsync(comboBox1.SelectedValue.ToString());
                wRef.GetSiteDetailsAsync(site);
            }

        }

Open in new window

0
Comment
Question by:ged125
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
8 Comments
 
LVL 18

Expert Comment

by:Anil Golamari
ID: 33470914
try

combobox1.selectedIndex !=0 and are you using MVVM pattern?
0
 
LVL 6

Author Comment

by:ged125
ID: 33470928
you mean remove the "this" from line 4?  Yes I did try that.   And I don't know what MVVM is. :)
0
 
LVL 18

Expert Comment

by:Anil Golamari
ID: 33470949
what kind of pattern are you using is it

MVC, MVVM or MVP
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 6

Author Comment

by:ged125
ID: 33470958
I am going to sound completey stupid here.  But how do I tell?  :)  I am using VS 2010, I did a Silverlight 4.0 Application, a Asp.net 3.5 web service middle tier, and asp.net 4.0 website.

As I said, I am new to Silverlight, but I have written ASPX before.
0
 
LVL 18

Accepted Solution

by:
Anil Golamari earned 500 total points
ID: 33470970
That error may occur because of two reasons
1) combo box is not instantiated
2) If you have issue with data binding to the combo box.

So take a look at the link below and see whether it fixed your issue.

http://forums.silverlight.net/forums/p/135593/303116.aspx 
0
 
LVL 6

Author Comment

by:ged125
ID: 33471078
Lucky85,  it appears you were correct about the combo Box not being instantiated.  Before I award the points, I just have a quick question.   When writing code behind an ASPX, just the simple fact that you have a drop down list on the ASPX page is enough to instantiate the object.  What's the difference in XAML code behind?
0
 
LVL 18

Expert Comment

by:Anil Golamari
ID: 33471145
http://forums.silverlight.net/forums/p/160806/361082.aspx

Take a look at the above link which will help you understand the page life cycle of silverlight.
0
 
LVL 6

Author Closing Comment

by:ged125
ID: 33471148
ComboBox was not instantiated.  Added the following

ComboBox cb  = sender as ComboBox;
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Recently I spent hours debugging an issue in a Rails project where ActiveRecord was causing MySQL errors trying to create a User object of a class at the top level of a Single Table Inheritance model structure.  It turns out `.create` behaves differ…
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
The purpose of this video is to demonstrate how to set up the WordPress backend so that each page automatically generates a Mailchimp signup form in the sidebar. This will be demonstrated using a Windows 8 PC. Tools Used are Photoshop, Awesome…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…

738 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question