private void addTraitButton_Click(object sender, EventArgs e)
        {
            this.SaveTraitData();

            this.traitData = new TraitData();
            this.traitList.Add(this.traitData);
            this.traitBox.SelectedIndex = this.traitList.Count - 1;
        }
 private void removeTraitButton_Click(object sender, EventArgs e)
 {
     this.traitList.Remove(this.traitData);
     this.traitData = null;
     this.traitBox.SelectedIndex = this.traitBox.SelectedIndex == 0 ? 0 : this.traitBox.SelectedIndex - 1;
 }
        private void traitListBox_SelectedIndexChanged(object sender, EventArgs e)
        {
            if(this.currentTraitId == ((TraitData)this.traitBox.SelectedItem).Id)
            {
                return;
            }

            this.traitData = (TraitData)this.traitBox.SelectedItem;
            this.currentTraitId = this.traitData.Id;
            this.SetUpBindings();
        }