public KryptonRibbonGroupMaskedTextBox()
{
// Default fields
_visible = true;
_enabled = true;
_itemSizeCurrent = GroupItemSize.Medium;
_shortcutKeys = Keys.None;
_keyTip = "X";
// Create the actual masked text box control and set initial settings
_maskedTextBox = new KryptonMaskedTextBox();
_maskedTextBox.InputControlStyle = InputControlStyle.Ribbon;
_maskedTextBox.AlwaysActive = false;
_maskedTextBox.MinimumSize = new Size(121, 0);
_maskedTextBox.MaximumSize = new Size(121, 0);
_maskedTextBox.TabStop = false;
// Hook into events to expose via our container
_maskedTextBox.TextAlignChanged += new EventHandler(OnMaskedTextBoxTextAlignChanged);
_maskedTextBox.TextChanged += new EventHandler(OnMaskedTextBoxTextChanged);
_maskedTextBox.HideSelectionChanged += new EventHandler(OnMaskedTextBoxHideSelectionChanged);
_maskedTextBox.ModifiedChanged += new EventHandler(OnMaskedTextBoxModifiedChanged);
_maskedTextBox.ReadOnlyChanged += new EventHandler(OnMaskedTextBoxReadOnlyChanged);
_maskedTextBox.MaskChanged += new EventHandler(OnMaskedMaskChanged);
_maskedTextBox.IsOverwriteModeChanged += new EventHandler(OnMaskedIsOverwriteModeChanged);
_maskedTextBox.MaskInputRejected += new MaskInputRejectedEventHandler(OnMaskedMaskInputRejected);
_maskedTextBox.TypeValidationCompleted += new TypeValidationEventHandler(OnMaskedTypeValidationCompleted);
_maskedTextBox.GotFocus += new EventHandler(OnMaskedTextBoxGotFocus);
_maskedTextBox.LostFocus += new EventHandler(OnMaskedTextBoxLostFocus);
_maskedTextBox.KeyDown += new KeyEventHandler(OnMaskedTextBoxKeyDown);
_maskedTextBox.KeyUp += new KeyEventHandler(OnMaskedTextBoxKeyUp);
_maskedTextBox.KeyPress += new KeyPressEventHandler(OnMaskedTextBoxKeyPress);
_maskedTextBox.PreviewKeyDown += new PreviewKeyDownEventHandler(OnMaskedTextBoxPreviewKeyDown);
// Ensure we can track mouse events on the masked text box
MonitorControl(_maskedTextBox);
}