can anyone think of why using this particular class in a design time data source will break all design time bindings? <p>I generated this class using SQLMetal.exe. It is very bindable at runtime, but if I use this class at design time, all of my design time blend bindings are busted.</p> <p>I am using the MVVM-Light framework and I am building an app for WP7. </p> <p>If I extract an interface for this class, and create a simple POCO that implements this interface and I use my simple poco in my design time data source, all of the bindings come alive.</p> <p>Here is the class that was generated by SQLMetal.exe.</p> <pre><code>[Table(Name="InspectionGroup")] public partial class InspectionGroup : INotifyPropertyChanging, INotifyPropertyChanged, IInspectionGroup { private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty); private int _InspectionGroupId; private string _GroupName; private System.DateTime _DateCreated; private EntitySet&lt;InspectionHeader&gt; _InspectionHeaders; private EntitySet&lt;InspectionPoint&gt; _InspectionPoints; #region Extensibility Method Definitions partial void OnLoaded(); partial void OnValidate(System.Data.Linq.ChangeAction action); partial void OnCreated(); partial void OnInspectionGroupIdChanging(int value); partial void OnInspectionGroupIdChanged(); partial void OnGroupNameChanging(string value); partial void OnGroupNameChanged(); partial void OnDateCreatedChanging(System.DateTime value); partial void OnDateCreatedChanged(); #endregion public InspectionGroup() { this._InspectionHeaders = new EntitySet&lt;InspectionHeader&gt;(new Action&lt;InspectionHeader&gt;(this.attach_InspectionHeaders), new Action&lt;InspectionHeader&gt;(this.detach_InspectionHeaders)); this._InspectionPoints = new EntitySet&lt;InspectionPoint&gt;(new Action&lt;InspectionPoint&gt;(this.attach_InspectionPoints), new Action&lt;InspectionPoint&gt;(this.detach_InspectionPoints)); OnCreated(); } [Column(Storage = "_InspectionGroupId", AutoSync = AutoSync.OnInsert, DbType = "Int NOT NULL IDENTITY", IsPrimaryKey = true, IsDbGenerated = true)] public int InspectionGroupId { get { return this._InspectionGroupId; } set { if ((this._InspectionGroupId != value)) { this.OnInspectionGroupIdChanging(value); this.SendPropertyChanging(); this._InspectionGroupId = value; this.SendPropertyChanged("InspectionGroupId"); this.OnInspectionGroupIdChanged(); } } } [Column(Storage = "_GroupName", DbType = "NVarChar(100) NOT NULL", CanBeNull = false)] public string GroupName { get { return this._GroupName; } set { if ((this._GroupName != value)) { this.OnGroupNameChanging(value); this.SendPropertyChanging(); this._GroupName = value; this.SendPropertyChanged("GroupName"); this.OnGroupNameChanged(); } } } [Column(Storage = "_DateCreated", DbType = "DateTime NOT NULL")] public System.DateTime DateCreated { get { return this._DateCreated; } set { if ((this._DateCreated != value)) { this.OnDateCreatedChanging(value); this.SendPropertyChanging(); this._DateCreated = value; this.SendPropertyChanged("DateCreated"); this.OnDateCreatedChanged(); } } } [Association(Name = "FK_InspectionHeader_InspectionGroup", Storage = "_InspectionHeaders", ThisKey = "InspectionGroupId", OtherKey = "InspectionGroupId", DeleteRule = "CASCADE")] public EntitySet&lt;InspectionHeader&gt; InspectionHeaders { get { return this._InspectionHeaders; } set { this._InspectionHeaders.Assign(value); } } [Association(Name = "FK_InspectionPoint_InspectionGroup", Storage = "_InspectionPoints", ThisKey = "InspectionGroupId", OtherKey = "InspectionGroupId", DeleteRule = "CASCADE")] public EntitySet&lt;InspectionPoint&gt; InspectionPoints { get { return this._InspectionPoints; } set { this._InspectionPoints.Assign(value); } } public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangedEventHandler PropertyChanged; protected virtual void SendPropertyChanging() { if ((this.PropertyChanging != null)) { this.PropertyChanging(this, emptyChangingEventArgs); } } protected virtual void SendPropertyChanged(String propertyName) { if ((this.PropertyChanged != null)) { this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } } private void attach_InspectionHeaders(InspectionHeader entity) { this.SendPropertyChanging(); entity.InspectionGroup = this; } private void detach_InspectionHeaders(InspectionHeader entity) { this.SendPropertyChanging(); entity.InspectionGroup = null; } private void attach_InspectionPoints(InspectionPoint entity) { this.SendPropertyChanging(); entity.InspectionGroup = this; } private void detach_InspectionPoints(InspectionPoint entity) { this.SendPropertyChanging(); entity.InspectionGroup = null; } } </code></pre>