<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.silverlight.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Silverlight Controls and Silverlight Toolkit</title><link>http://forums.silverlight.net/forums/35.aspx</link><description>Discussions around using and developing Silverlight controls and the Silverlight Toolkit</description><dc:language>en</dc:language><generator>CommunityServer 2007 (Build: 20416.853)</generator><item><title>Re: ComboBox.SelectedItem will not bind when DataContext set</title><link>http://forums.silverlight.net/forums/thread/236140.aspx</link><pubDate>Mon, 22 Jun 2009 06:05:51 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:236140</guid><dc:creator>Mog Liang - MSFT</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/236140.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=35&amp;PostID=236140</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I cannot repro your issue in silverlight3, selecteditem binding works correct as well as itemssource binding.&lt;/p&gt;
&lt;p&gt;one possible reason: selecteditem is not object reference contained in itemssource.&lt;/p&gt;
&lt;p&gt;my test code here,&amp;nbsp;have a try&lt;/p&gt;
&lt;p&gt;entity&lt;/p&gt;&lt;pre class="coloredcode"&gt;   &lt;span class="kwd"&gt;public class&lt;/span&gt; News
    {
        &lt;span class="kwd"&gt;public string&lt;/span&gt; Title { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
        &lt;span class="kwd"&gt;public&lt;/span&gt; DateTime Date { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
        &lt;span class="kwd"&gt;public int&lt;/span&gt; Importance { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
        &lt;span class="kwd"&gt;public&lt;/span&gt; NewsContent Content { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
    }

    &lt;span class="kwd"&gt;public class&lt;/span&gt; NewsContent
    {
        &lt;span class="kwd"&gt;public string&lt;/span&gt; Content1 { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
        &lt;span class="kwd"&gt;public string&lt;/span&gt; Content2 { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
        &lt;span class="kwd"&gt;public string&lt;/span&gt; Content3 { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
    }

    &lt;span class="kwd"&gt;public class&lt;/span&gt; NewsList : List
    {
        &lt;span class="kwd"&gt;public&lt;/span&gt; NewsList():&lt;span class="kwd"&gt;base&lt;/span&gt;()
        {
            &lt;span class="kwd"&gt;for&lt;/span&gt; (&lt;span class="kwd"&gt;int&lt;/span&gt; i = 0; i &amp;lt; 10; i++)
            {
                Add(&lt;span class="kwd"&gt;new&lt;/span&gt; News
                {
                    Title = &lt;span class="st"&gt;&amp;quot;title:&amp;quot;&lt;/span&gt; + i,
                    Date = DateTime.Now.AddHours(1),
                    Importance = i % 3,
                    Content = &lt;span class="kwd"&gt;new&lt;/span&gt; NewsContent
                    {
                        Content1 = &lt;span class="st"&gt;&amp;quot;Content1&amp;quot;&lt;/span&gt;,
                        Content2 = &lt;span class="st"&gt;&amp;quot;Content2&amp;quot;&lt;/span&gt;,
                        Content3 = &lt;span class="st"&gt;&amp;quot;Content3&amp;quot;&lt;/span&gt;
                    }
                });
            }
        }
    }&lt;/pre&gt;&amp;nbsp;Model&amp;nbsp;&lt;pre class="coloredcode"&gt;    &lt;span class="kwd"&gt;public class&lt;/span&gt; NewsModel
    {
        &lt;span class="kwd"&gt;public&lt;/span&gt; NewsList List { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
        &lt;span class="kwd"&gt;public&lt;/span&gt; News Selected { &lt;span class="kwd"&gt;set&lt;/span&gt;; &lt;span class="kwd"&gt;get&lt;/span&gt;; }
        &lt;span class="kwd"&gt;public&lt;/span&gt; NewsModel()
        {
            List = &lt;span class="kwd"&gt;new&lt;/span&gt; NewsList();
            Selected = List[5]; // selected is one object contained in list
        }
    }&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;View (xaml)&amp;nbsp;&lt;pre class="coloredcode"&gt;    &amp;lt;&lt;span class="tag"&gt;Grid&lt;/span&gt;&lt;span class="attr"&gt; x:Name=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;LayoutRoot&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; Background=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;White&amp;quot;&lt;/span&gt;&amp;gt;
        &amp;lt;&lt;span class="tag"&gt;StackPanel&lt;/span&gt;&amp;gt;
            &amp;lt;&lt;span class="tag"&gt;ComboBox&lt;/span&gt;&lt;span class="attr"&gt; Name=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;cb1&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; ItemsSource=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;{Binding List}&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; DisplayMemberPath=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;Title&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; SelectedItem=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;{Binding Selected,Mode=TwoWay}&amp;quot;&lt;/span&gt;/&amp;gt;
            &amp;lt;&lt;span class="tag"&gt;Button&lt;/span&gt;&lt;span class="attr"&gt; Content=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;click me&amp;quot;&lt;/span&gt;&lt;span class="attr"&gt; Click=&lt;/span&gt;&lt;span class="attrv"&gt;&amp;quot;Button_Click&amp;quot;&lt;/span&gt;/&amp;gt;
        &amp;lt;/&lt;span class="tag"&gt;StackPanel&lt;/span&gt;&amp;gt;
    &amp;lt;/&lt;span class="tag"&gt;Grid&lt;/span&gt;&amp;gt;&lt;/pre&gt;&amp;nbsp;(code)&amp;nbsp;&lt;pre class="coloredcode"&gt;        &lt;span class="kwd"&gt;private void&lt;/span&gt; Button_Click(&lt;span class="kwd"&gt;object&lt;/span&gt; sender, RoutedEventArgs e)
        {
            &lt;span class="kwd"&gt;this&lt;/span&gt;.DataContext = &lt;span class="kwd"&gt;new&lt;/span&gt; NewsModel();
        }&lt;/pre&gt;</description></item><item><title>ComboBox.SelectedItem will not bind when DataContext set</title><link>http://forums.silverlight.net/forums/thread/234107.aspx</link><pubDate>Tue, 16 Jun 2009 18:52:38 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:234107</guid><dc:creator>rbaumannerb</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/234107.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=35&amp;PostID=234107</wfw:commentRss><description>&lt;p&gt;I&amp;#39;m trying to get my ComboBox to bind to an object property in my view model.&amp;nbsp; When the form loads the view model is passed to the constructor and is set to the user control&amp;#39;s DataContext property.&amp;nbsp; The view model raises an event after it&amp;nbsp;populates its properties with data it retrieves from a web service.&amp;nbsp; The user control subscribes to the event and performs some GUI stuff (enabling/disabling/formatting controls based on certain values).&amp;nbsp; After the data is loaded onto the form the ComboBoxes do not have selected items.&amp;nbsp; The corresponding properties in the view model have values for the ComboBoxes.&amp;nbsp; The boxes have the lists of values, with the correct object member displayed as the text.&lt;/p&gt;
&lt;p&gt;Here&amp;#39;s an example of the XAML used to create a ComboBox:&lt;/p&gt;
&lt;p&gt;&amp;lt;ComboBox HorizontalAlignment=&amp;quot;Left&amp;quot; VerticalAlignment=&amp;quot;Center&amp;quot; Grid.Row=&amp;quot;1&amp;quot; Grid.Column=&amp;quot;5&amp;quot; Background=&amp;quot;#FFFAEE04&amp;quot; MinWidth=&amp;quot;200&amp;quot; Margin=&amp;quot;0,0,5,0&amp;quot; x:Name=&amp;quot;cboPayType&amp;quot; &lt;strong&gt;ItemsSource=&amp;quot;{Binding PayTypes}&amp;quot; DisplayMemberPath=&amp;quot;Text&amp;quot; SelectedItem=&amp;quot;{Binding PayType, Mode=TwoWay}&amp;quot;&lt;/strong&gt;/&amp;gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;My view model has a property called &amp;quot;PayType&amp;quot; that is an object with a &lt;em&gt;Text&lt;/em&gt;, &lt;em&gt;Value&lt;/em&gt;, and &lt;em&gt;AdditionalValue&lt;/em&gt; member.&lt;/p&gt;
&lt;p&gt;The user control&amp;#39;s code-behind sets &lt;strong&gt;this.DataContext = vm;&lt;/strong&gt; inside the event raised by the view model after its properties are set.&amp;nbsp; I also tried setting the DataContext of the user&amp;nbsp;control&amp;#39;s container grid to the vm...but that doesn&amp;#39;t work either.&amp;nbsp; In addition to single ComboBoxes in the user control, there is also a grid that contains rows of data from another property in the view model.&amp;nbsp; One of the columns in the grid is a ComboBox.&amp;nbsp; This also displays the list of items, but does not show the SelectedItem value when the DataContext is set.&amp;nbsp; However, if I add a new row to the grid by clicking an &amp;quot;Add&amp;quot; button (which adds a new item to the collection that&amp;#39;s bound to the grid) the default SelectedItem of the new row&amp;nbsp;is displayed.&lt;/p&gt;
&lt;p&gt;It seems as though I have a problem with binding my ComboBoxes when the form is loaded.&amp;nbsp; Has anyone else experienced this, and/or do you have a solution?&lt;/p&gt;</description></item></channel></rss>