Getting object properties from interface reference

A

Andrey

Hi,

Here's the problem:
Say a have a class, implementing an interface:

// vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
public class GraphClass : IGraphInterface
{
public string Property1 {
get {
return value1;
}
set {
value1 = value;
}
}

public string Property2 {
get {
return value2;
}
set {
value2 = value;
}
}
/*Some other code*/
}
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Say, somewhere in my progarm i do the following:

IGraphInterface gc = new GraphClass();

Is there a way to get a list of properties (Property1, Property2, etc) along with their names
(if possible) from the instance 'gc', if it's referenced as interface, like in the example?
I can assume that yes, because it's done somehow by VS IDE, when you use UserControls, where you can
define a property which will appear in "Properties" toolbar.


Any ideas would be highly appreciated!

Thank you in advance,
Andrey
 
P

Peter Rilling

You could try using reflection, but you will not be able to early bind your
method calls because, as you are aware, the compiler only sees the interface
members.
 
A

Andrey

You could try using reflection, but you will not be able to early bind your
method calls because, as you are aware, the compiler only sees the interface
members.


I got your idea! But still,... how does VS see properties of user components?
Or is there any around? Maybe attributes?

What i'm doing is a IDE for a python reporting package. This IDE has the same idea as VS IDE - set
of reporting components which you can drop onto a page, and for each of which you should be able to
set some properties, which obviously are differ by component class

Please any ideas!!!

Thank you in advance
Andrey
 
A

Andrey

Peter said:
You could try using reflection, but you will not be able to early bind your
method calls because, as you are aware, the compiler only sees the interface
members.

I got your idea! But still,... how does VS sees properties of user components?
Or is there any around? Maybe attributes?

What i'm doing is a IDE for a python reporting package. This IDE has the same idea as VS IDE - set
of reporting components which you can drop onto a page, and for each of which you should be able to
set some properties, which obviously are differ by component class

Please any ideas!!!

Thank you in advance
Andrey
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top