?
Solved

UserControl Property - bindable

Posted on 2003-11-16
5
Medium Priority
?
718 Views
Last Modified: 2012-06-21
Hi,

I have created a Scrollable Control which has certain properties. One among them is a LinesStyle property which gets or sets an int value. This prooperty will be set through the desginger UI.

In the designer UI, I would like to have a small list box for this property which will contian values from 0 to 5 so that the designer cannot set values out of this range.

I could not get how to do this, even after setting the ListBindable(true).

Please let me know.

Thanks and Regards
Murali
0
Comment
Question by:bmmohan
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
5 Comments
 
LVL 20

Expert Comment

by:TheAvenger
ID: 9762063
What about if you make it to be of an enumeration type and put in 5 values in the enumeration?
0
 

Author Comment

by:bmmohan
ID: 9762095
Hi  TheAvenger

Can you please eloborate this with some sample code?

Thanks and Regards
Murali
0
 
LVL 20

Assisted Solution

by:TheAvenger
TheAvenger earned 160 total points
ID: 9762135
Something like:

public enum LinesStyles {
  SuperThin = 0,
  VeryThin = 1,
  Thin = 2,
  Normal = 3,
  Thick = 4,
  VeryThick = 5
}

And then change the type of your property from int to LinesStyles. You can still use it in your code as int by casting it like:

int i = 1 + (int)this.lineStyle;
0
 
LVL 6

Accepted Solution

by:
purpleblob earned 240 total points
ID: 9762171
This is a very simple example of creating and using an enum. Place the public enum inside your control's class. m_LineStyle is a private member variable and obviously the Style property should be public. I've excluded code to force a redraw and check whether the value's actually changed.

public enum LineStyle
{
None,
Solid,
Dot      
}

private LineStyle m_LineStyle;

public LineStyle Style
{
   get { return m_LineStyle; }
   set { m_LineStyle = value; }
}
0
 

Author Comment

by:bmmohan
ID: 9768311
Hi TheAvenger and  purpleblob,

Thanks for the solution. It was very simple. I could do it successfully.

Thanks and Regards
Murali
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Extention Methods in C# 3.0 by Ivo Stoykov C# 3.0 offers extension methods. They allow extending existing classes without changing the class's source code or relying on inheritance. These are static methods invoked as instance method. This…
It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…
Suggested Courses

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question