I had a similar issue some time ago, creating a scrolling marquee to display a message. I used the following to add properties to my control (C# but the idea is the same):
public class Marquee : System.Windows.Forms.Control
{
#region Additional properties specific to this control: modify them in the VS properties window
private Color sColour = Color.Azure;
[Category("Appearance"), Description("The starting gradient color of the text.")]
public Color StartColor
{
get { return sColour; }
set
{
sColour = value;
Invalidate();
}
}
private Color eColour = Color.Gold;
[Category("Appearance"), Description("The ending gradient color of the text.")]
public Color EndColor
{
get { return eColour; }
set
{
eColour = value;
Invalidate();
}
}
private int timerInterval = 150;
[Category("Appearance"), Description("Controls the marquee scrolling speed.")]
public int ScrollDelay
{
get { return timerInterval; }
set
{
timerInterval = value;
}
}
#endregion properties
I could then use the Proprties window to modify the values in other applications.