title: Why this UWP ComboBox can be blank after initialization but works fine for selection?
body: <p>I have a ComboBox like this</p>
  
  <pre><code>&lt;ComboBox
      Grid.Column="1"
      Padding="5,0,0,0"
      DisplayMemberPath="Description" 
      SelectedItem="{Binding MaxXXAge, Mode=TwoWay, Converter={StaticResource MaxXXAgeToMaxXXAgeMemberConverter}}"
      ItemsSource="{Binding ElementName=SettingsXXScrollViewer, Path=DataContext.MaxXXAgeMemberGroup, Mode=OneWay}" /&gt;
  </code></pre>
  
  <p>However, after initialization, the combobox is blank. It actually works fine after this. I can select and show the selected item as expected. It's just the first glance doesn't work. However, I already initialized MaxXXAge and the converter has been triggered.  Here is the group</p>
  
  <pre><code>public IReadOnlyList&lt;MaxXXAgeMembers&gt; MaxXXAgeMemberGroup { get { return MaxXXAgeMembers.Options; } }
  </code></pre>
  
  <p>And this is the definition for MaxXXAgeMembers</p>
  
  <pre><code>public class MaxXXAgeMembers
          {
              public MaxXXAge MaxXXAge { get; private set; }
              public string Description { get; private set; }
  
              public static readonly IReadOnlyList&lt;MaxXXAgeMembers&gt; Options = new ReadOnlyCollection&lt;MaxXXAgeMembers&gt;(new[]
              {
                  new MaxXXAgeMembers { MaxXXAge =  MaxXXAge.OneDay, Description = Strings.SettingSync_OneDay},
  .......
              });
  
              public static MaxXXAgeMembers FromMaxXXAge(MaxXXAge maxXXAge)
              {
                  return Options.First(option =&gt; option.MaxXXAge == maxXXAge);
              }
          }
  </code></pre>
  
  <p>//Added the Overriding Equals later</p>
  
  <pre><code>public override bool Equals(object obj)
  {
       if (obj == null || !(obj is MaxEmailAgeMembers))
            return false;
       return ((MaxEmailAgeMembers)obj).Description.Equals(this.Description);
  }
  
  public override int GetHashCode()
  {
       return this.Description.GetHashCode();
  }
  </code></pre>
  
  <p>The converter is like this</p>
  
  <pre><code>public sealed class MaxEmailAgeToMaxEmailAgeMemberConverter : IValueConverter
  {
      public object Convert(object value, Type targetType, object parameter, string language)
      {
          return WPSettingsEmailViewModel.MaxEmailAgeMembers.FromMaxEmailAge((MaxEmailAge)value);
      }
  
      public object ConvertBack(object value, Type targetType, object parameter, string language)
      {
          return ((WPSettingsEmailViewModel.MaxEmailAgeMembers)value).MaxEmailAge;
      }
  }
  </code></pre>
  
  <p>Any idea?</p>