This is visual c# so I'm not sure if this thread should go here.

I am attempting to add a custom event to the event section of properties panel for my custom control. The problem is no event is being added to the panel for me to subscribe to.

I attempted to create the event with,
Code:
public event System.EventHandler PositionChanged;
and then built the solution but still no event appeared in the panel.

Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace LabelTextBox
{    
    public partial class ctlLabelTextbox : UserControl
    {
        public enum PositionEnum
        {
            Right,
            Below
        }

        private PositionEnum position = PositionEnum.Right;
        private int textboxMargin = 0;
        private string labelText = "";

        public event System.EventHandler PositionChanged;

        public string LabelText
        {
            get { return labelCaption.Text; }
            set
            {
                labelCaption.Text = labelText = value;
                MoveControls();
            }
        }
        
        public string TextboxText
        {
            get { return textBoxText.Text; }
            set
            {
                textBoxText.Text = value;
            }
        }
        
        public PositionEnum Position
        {
            get { return position; }
            set
            {
                position = value;
                MoveControls();
            }
        }

        public int TextboxMargin
        {
            get { return textboxMargin; }
            set
            {
                textboxMargin = value;
                MoveControls();
                if (PositionChanged != null)
                    PositionChanged(this, new EventArgs());
            }
        }

        public ctlLabelTextbox()
        {
            InitializeComponent();
        }



        private void ctlLabelTextbox_Load(object sender, EventArgs e)
        {
            labelCaption.Text = labelText;
            Height = textBoxText.Height > labelCaption.Height ? textBoxText.Height : labelCaption.Height;
            MoveControls();
        }

        private void ctlLabelTextbox_SizeChanged(object sender, EventArgs e)
        {
            MoveControls();
        }

        private void MoveControls()
        {
            switch (position)
            {
                case PositionEnum.Below:
                    textBoxText.Top = labelCaption.Bottom;
                    textBoxText.Left = labelCaption.Left;
                    textBoxText.Width = Width;
                    Height = textBoxText.Height + labelCaption.Height;
                    break;
                case PositionEnum.Right:
                    textBoxText.Top = labelCaption.Top;
                    if (textboxMargin == 0)
                    {
                        int width = Width - labelCaption.Width - 3;
                        textBoxText.Left = labelCaption.Right + 3;
                        textBoxText.Width = width;
                    }
                    else
                    {
                        textBoxText.Left = textboxMargin + labelCaption.Width;
                        textBoxText.Width = Width - textBoxText.Left;
                    }
                    Height = textBoxText.Height > labelCaption.Height ?
                    textBoxText.Height : labelCaption.Height;
                    break;
            }
        }

        private void textBoxText_KeyDown(object sender, KeyEventArgs e)
        {
            OnKeyDown(e);
        }

        private void textBoxText_KeyPress(object sender, KeyPressEventArgs e)
        {
            OnKeyPress(e);
        }

        private void textBoxText_KeyUp(object sender, KeyEventArgs e)
        {
            OnKeyUp(e);
        }
    }
}
I downloaded the source code for this since it is from a book and the source code didn't have the a event handler for the event and the event wasn't in the event section of properties for the custom control.