protected bool m_BindThis; this.DataBindings.Add("BindThis", MyDataTable, "MyColumn"); [Bindable(true)] public bool BindThis { get {return this.m_BindThis;} set { this.m_BindThis = value; this.Checked = this.m_BindThis; } }There's other things that need to be defined in this check-box subclass (like an Event Handler or two), but my problem isn't there. My problem is that as soon as the BindingContext.Position changes to a different row of the bound table, the value of the bound column gets changed (presumably by the get of the BindThis property). This obviously shouldn't happen, but I'm stumped as to what I might be missing.