473,382 Members | 1,441 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,382 software developers and data experts.

PropertiesGrid and opening forms

Hi,

I have a 3rd party control(infragistics) that seems to alter the VS.NET IDE
properties grid so that there are three areas instead of two areas in the
VS.NET IDE properties grid. There is a new middle area that looks a lot like
the description area except it has hyperlinks that open forms that allow the
currently displayed control to be edited.

Does anyone know how to do this with the properties grid in VS.NET? Is the
properties grid used in the IDE the same as the one that you can use in your
projects?

Thanks,
Shawn
Nov 20 '05 #1
5 1853
You can do this by setting the Description And Category attributes of your
component. Also, if you have a property of your control that has an enum
for instance, it'll show up as a combo box in the property grid. If you
have an indexer, you'll have the little button that will pop up the form to
let you add items. The behavoir of things inside the grid is largely
dependent on how you set up your properties, but to get the Description and
Category to change, it's as easy as adding an attribute
<Description("Whateever you want it to say"), Category("Behavior"),
DefaultValue(Whatever You want Here")

HTH,

Bill
"Shawn Hogan" <NOSPAM> wrote in message
news:O#**************@tk2msftngp13.phx.gbl...
Hi,

I have a 3rd party control(infragistics) that seems to alter the VS.NET IDE properties grid so that there are three areas instead of two areas in the
VS.NET IDE properties grid. There is a new middle area that looks a lot like the description area except it has hyperlinks that open forms that allow the currently displayed control to be edited.

Does anyone know how to do this with the properties grid in VS.NET? Is the
properties grid used in the IDE the same as the one that you can use in your projects?

Thanks,
Shawn

Nov 20 '05 #2
The area i'm talking about isn't the "description" area... it's another one
that's between the grid and tre description area. Inside of this area is a
list of links which open up forms.

The reason why i'm so interested in this area is because i want to open a
form to edit properties in the selected object from the properties grid. The
catch is that the form cannot be modal. I need to interact with the
application when i have the form open.

Shawn

"William Ryan [eMVP]" <do********@comcast.nospam.net> wrote in message
news:uT**************@TK2MSFTNGP09.phx.gbl...
You can do this by setting the Description And Category attributes of your
component. Also, if you have a property of your control that has an enum
for instance, it'll show up as a combo box in the property grid. If you
have an indexer, you'll have the little button that will pop up the form to let you add items. The behavoir of things inside the grid is largely
dependent on how you set up your properties, but to get the Description and Category to change, it's as easy as adding an attribute
<Description("Whateever you want it to say"), Category("Behavior"),
DefaultValue(Whatever You want Here")

HTH,

Bill
"Shawn Hogan" <NOSPAM> wrote in message
news:O#**************@tk2msftngp13.phx.gbl...
Hi,

I have a 3rd party control(infragistics) that seems to alter the VS.NET

IDE
properties grid so that there are three areas instead of two areas in the VS.NET IDE properties grid. There is a new middle area that looks a lot

like
the description area except it has hyperlinks that open forms that allow

the
currently displayed control to be edited.

Does anyone know how to do this with the properties grid in VS.NET? Is the properties grid used in the IDE the same as the one that you can use in

your
projects?

Thanks,
Shawn


Nov 20 '05 #3
I just opened Infragistics and see what you are talking about. I'm not sure
off of the top of my head, but I have an idea..I'll get back to you
shortly..

Bill
"Shawn Hogan" <NOSPAM> wrote in message
news:OY**************@TK2MSFTNGP09.phx.gbl...
The area i'm talking about isn't the "description" area... it's another one that's between the grid and tre description area. Inside of this area is a
list of links which open up forms.

The reason why i'm so interested in this area is because i want to open a
form to edit properties in the selected object from the properties grid. The catch is that the form cannot be modal. I need to interact with the
application when i have the form open.

Shawn

"William Ryan [eMVP]" <do********@comcast.nospam.net> wrote in message
news:uT**************@TK2MSFTNGP09.phx.gbl...
You can do this by setting the Description And Category attributes of your
component. Also, if you have a property of your control that has an enum for instance, it'll show up as a combo box in the property grid. If you
have an indexer, you'll have the little button that will pop up the form

to
let you add items. The behavoir of things inside the grid is largely
dependent on how you set up your properties, but to get the Description

and
Category to change, it's as easy as adding an attribute
<Description("Whateever you want it to say"), Category("Behavior"),
DefaultValue(Whatever You want Here")

HTH,

Bill
"Shawn Hogan" <NOSPAM> wrote in message
news:O#**************@tk2msftngp13.phx.gbl...
Hi,

I have a 3rd party control(infragistics) that seems to alter the
VS.NET IDE
properties grid so that there are three areas instead of two areas in the VS.NET IDE properties grid. There is a new middle area that looks a
lot like
the description area except it has hyperlinks that open forms that
allow the
currently displayed control to be edited.

Does anyone know how to do this with the properties grid in VS.NET? Is the properties grid used in the IDE the same as the one that you can use

in your
projects?

Thanks,
Shawn



Nov 20 '05 #4
Any control can show these, but it does require a small amount of work:

Your control needs to have a designer defined (that is,
[Designer(typeof(SomeDesigner))]
public class SomeControl : System.Windows.Forms.UserControl // Or
Control, or an asp.net control whatever. it must inherit from component

Your designer will most likely inherit from ControlDesigner, or some such.
To add these "hyperlinks", you add Verbs. You can do this by overriding the
"Verbs" property of your designer ...

public class SomeDesigner : ControlDesigner{
....
DesignerVerbCollection _verbs;
public override DesignerVerbCollection Verbs{
get{
if(_verbs == null)
{
_verbs = new DesignerVerbCollection();
_verbs.Add (
new DesignerVerb("Cool Action", new
EventHandler(CoolAction_Handler)));
}
return _verbs;
}
}
....

Then you just code the function you passed in as a delegate above:

private void CoolAction_Handler(object sender, EventArgs e){
//Do something neat
}

"William Ryan [eMVP]" <do********@comcast.nospam.net> wrote in message
news:Oo**************@TK2MSFTNGP12.phx.gbl...
I just opened Infragistics and see what you are talking about. I'm not sure off of the top of my head, but I have an idea..I'll get back to you
shortly..

Bill
"Shawn Hogan" <NOSPAM> wrote in message
news:OY**************@TK2MSFTNGP09.phx.gbl...
The area i'm talking about isn't the "description" area... it's another

one
that's between the grid and tre description area. Inside of this area is a
list of links which open up forms.

The reason why i'm so interested in this area is because i want to open a form to edit properties in the selected object from the properties grid.

The
catch is that the form cannot be modal. I need to interact with the
application when i have the form open.

Shawn

"William Ryan [eMVP]" <do********@comcast.nospam.net> wrote in message
news:uT**************@TK2MSFTNGP09.phx.gbl...
You can do this by setting the Description And Category attributes of your component. Also, if you have a property of your control that has an enum for instance, it'll show up as a combo box in the property grid. If you have an indexer, you'll have the little button that will pop up the
form to
let you add items. The behavoir of things inside the grid is largely
dependent on how you set up your properties, but to get the
Description and
Category to change, it's as easy as adding an attribute
<Description("Whateever you want it to say"), Category("Behavior"),
DefaultValue(Whatever You want Here")

HTH,

Bill
"Shawn Hogan" <NOSPAM> wrote in message
news:O#**************@tk2msftngp13.phx.gbl...
> Hi,
>
> I have a 3rd party control(infragistics) that seems to alter the VS.NET IDE
> properties grid so that there are three areas instead of two areas
in the
> VS.NET IDE properties grid. There is a new middle area that looks a lot like
> the description area except it has hyperlinks that open forms that allow the
> currently displayed control to be edited.
>
> Does anyone know how to do this with the properties grid in VS.NET?
Is the
> properties grid used in the IDE the same as the one that you can use

in your
> projects?
>
> Thanks,
> Shawn
>
>



Nov 20 '05 #5
Sorry that was in c#.. I lost track of the NG I was in! (also note that I
have no VS.NET here... this code is almost-code, as it's never been syntax
checked. Hopfully the concepts don't suffer.)

The concept is the same -> add the Designer attribute to your class:
<Designer ... >
Public Class SomeControl
Inherits System.Windows.Forms.Control
....

Then implement the designer and override the Verbs Property.
Private _verbs As DesignerVerbCollection
Public Property Verbs As DesignerVerbCollection
Get
If _verbs Is Nothing Then
_verbs.Add( _
new DesignerVerb( "Cool Action", AddressOf( CoolAction_Handler)))
End If
Return _verbs
End Get
End Property
....
Then implement the handler:

Private Sub CoolAction_Handler( sender As Object, e As EventArgs)
'something neat goes here.
End Sub
"Philip Rieck" <st***@mckraken.com> wrote in message
news:On****************@tk2msftngp13.phx.gbl...
Any control can show these, but it does require a small amount of work:

Your control needs to have a designer defined (that is,
[Designer(typeof(SomeDesigner))]
public class SomeControl : System.Windows.Forms.UserControl // Or
Control, or an asp.net control whatever. it must inherit from component

Your designer will most likely inherit from ControlDesigner, or some such.
To add these "hyperlinks", you add Verbs. You can do this by overriding the "Verbs" property of your designer ...

public class SomeDesigner : ControlDesigner{
...
DesignerVerbCollection _verbs;
public override DesignerVerbCollection Verbs{
get{
if(_verbs == null)
{
_verbs = new DesignerVerbCollection();
_verbs.Add (
new DesignerVerb("Cool Action", new
EventHandler(CoolAction_Handler)));
}
return _verbs;
}
}
...

Then you just code the function you passed in as a delegate above:

private void CoolAction_Handler(object sender, EventArgs e){
//Do something neat
}

"William Ryan [eMVP]" <do********@comcast.nospam.net> wrote in message
news:Oo**************@TK2MSFTNGP12.phx.gbl...
I just opened Infragistics and see what you are talking about. I'm not sure
off of the top of my head, but I have an idea..I'll get back to you
shortly..

Bill
"Shawn Hogan" <NOSPAM> wrote in message
news:OY**************@TK2MSFTNGP09.phx.gbl...
The area i'm talking about isn't the "description" area... it's another
one
that's between the grid and tre description area. Inside of this area
is a list of links which open up forms.

The reason why i'm so interested in this area is because i want to
open
a form to edit properties in the selected object from the properties
grid.
The
catch is that the form cannot be modal. I need to interact with the
application when i have the form open.

Shawn

"William Ryan [eMVP]" <do********@comcast.nospam.net> wrote in message
news:uT**************@TK2MSFTNGP09.phx.gbl...
> You can do this by setting the Description And Category attributes
of your
> component. Also, if you have a property of your control that has an enum
> for instance, it'll show up as a combo box in the property grid. If you > have an indexer, you'll have the little button that will pop up the form to
> let you add items. The behavoir of things inside the grid is
largely > dependent on how you set up your properties, but to get the

Description and
> Category to change, it's as easy as adding an attribute
> <Description("Whateever you want it to say"), Category("Behavior"),
> DefaultValue(Whatever You want Here")
>
> HTH,
>
> Bill
> "Shawn Hogan" <NOSPAM> wrote in message
> news:O#**************@tk2msftngp13.phx.gbl...
> > Hi,
> >
> > I have a 3rd party control(infragistics) that seems to alter the

VS.NET
> IDE
> > properties grid so that there are three areas instead of two areas in the
> > VS.NET IDE properties grid. There is a new middle area that looks
a lot
> like
> > the description area except it has hyperlinks that open forms that

allow
> the
> > currently displayed control to be edited.
> >
> > Does anyone know how to do this with the properties grid in
VS.NET? Is the
> > properties grid used in the IDE the same as the one that you can

use in
> your
> > projects?
> >
> > Thanks,
> > Shawn
> >
> >
>
>



Nov 20 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Eric Cadwell | last post by:
We're running Load Runner to test a large 1.0 based WinForms application. I'm getting the following exception when opening and closing a form 400 - 450 times. The form contains several controls and...
4
by: Jelmer | last post by:
Hi I've been trying to create an addin similar to Find & Replace from Rick Fisher that looks thru your tables / queries / forms / modules etc.. for a reference to a string and optionally let's you...
9
by: BLUE WATER | last post by:
Help, When I am finished entering in data into my form A, I press the save button that saves this new data to a new record. However I would like my other form to open at a specific record, the...
3
by: Mike Wilson | last post by:
Is there a way to open an OLE DB database from within Access? I would like to use the Access GUI with its table and query explorer to examine a database only available through an OLEDB provider...
1
by: robertmeyer1 | last post by:
Hey, I am having a problem with opening some forms. I have several forms. The forms are based off the same table, tblClient. Each form has a sbf inserted into it. These sbf’s are each based...
11
by: Tony K | last post by:
I have a MDI application. On the menu toolstrip child forms are selected from one of the menus. I don't want to play the disable/enable menu item game. I have selected that open forms are added...
2
by: diogenes | last post by:
I have created many shortcut/popup (aka context, or right-click) menus for my application - instead of toolbars or standard drop-down menus. Within my custom menu, I am using...
2
by: John | last post by:
Hi I have a number of forms which open like this; Dim frm1 As frmForm1 = New frmForm1 Dim frm2 As frmForm2 = New frmForm2 Dim frm3 As frmForm3 = New frmForm3 Dim frm4 As frmForm4 = New...
2
by: =?Utf-8?B?RXRoYW4gU3RyYXVzcw==?= | last post by:
I am (still) relatively new to Windows applications, most of my experience has been Web based, and I am confused about what exactly happens when the Main() method is called and how to manipulate...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.