public override void Assign(RepositoryItem item)
        {
            RepositoryItemCustomButtonEdit source = item as RepositoryItemCustomButtonEdit;

            BeginUpdate();
            try {
                base.Assign(item);
                if (source == null)
                {
                    return;
                }
            }
            finally {
                EndUpdate();
            }
            Events.AddHandler(buttonStateEvent, source.Events[buttonStateEvent]);
        }
 static CustomButtonEdit()
 {
     RepositoryItemCustomButtonEdit.RegisterEditor();
 }