I can set focus to my property grid by using propgrid.Focus - but how can I
set the default property that is always first? Or just set focus to the
default property? Can this be done?
I can set focus to my property grid by using propgrid.Focus - but how can I
set the default property that is always first? Or just set focus to the
default property? Can this be done?
On Sep 27, 11:40*pm, "Derek Hart" <derekmh...@xxxxxx> wrote:Hi Derek,
> I can set focus to my property grid by using propgrid.Focus - but how canI
> set the default property that is always first? Or just set focus to the
> default property? Can this be done?
To select(or focus) a pre-defined property in a PropertyGrid control
programmatically, you can use loop through GridItems and check "label"
to determine which item to be selected:
'------Begin-----
Dim GridItem As GridItem = PropertyGrid1.SelectedGridItem
Dim pGridItem As GridItem = GridItem.Parent
For Each egi As GridItem In pGridItem.GridItems
If egi.Label = "property_label_here" Then
PropertyGrid1.Focus()
egi.Select()
End If
Next
'------End-------
Hope this helps,
Onur Güzel
Thank you for the answer. Just need to add one thing to it. I am running
this code on the keydown event for a textbox control. It sets focus to the
grid properly now. But I need to trap the keystroke that was hit and fill it
in as the first character in the property, just like how Visual Studio works
when you are on a control and hit the first keyboard character and it starts
typing in the default property for that control. Is this possible?
"kimiraikkonen" <kimiraikkonen85@xxxxxx> wrote in message
news:d0081a3d-c555-4854-a226-dfdfaa56b500@xxxxxx
On Sep 27, 11:40 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:Hi Derek,
> I can set focus to my property grid by using propgrid.Focus - but how can
> I
> set the default property that is always first? Or just set focus to the
> default property? Can this be done?
To select(or focus) a pre-defined property in a PropertyGrid control
programmatically, you can use loop through GridItems and check "label"
to determine which item to be selected:
'------Begin-----
Dim GridItem As GridItem = PropertyGrid1.SelectedGridItem
Dim pGridItem As GridItem = GridItem.Parent
For Each egi As GridItem In pGridItem.GridItems
If egi.Label = "property_label_here" Then
PropertyGrid1.Focus()
egi.Select()
End If
Next
'------End-------
Hope this helps,
Onur Güzel
On Sep 28, 8:33*pm, "Derek Hart" <derekmh...@xxxxxx> wrote:As far as i understand (i couldn't guess well maybe), you're wanting
> Thank you for the answer. Just need to add one thing to it. I am running
> this code on the keydown event for a textbox control. It sets focus to the
> grid properly now. But I need to trap the keystroke that was hit and fillit
> in as the first character in the property, just like how Visual Studio works
> when you are on a control and hit the first keyboard character and it starts
> typing in the default property for that control. Is this possible?
>
> "kimiraikkonen" <kimiraikkone...@xxxxxx> wrote in message
>
> news:d0081a3d-c555-4854-a226-dfdfaa56b500@xxxxxx
> On Sep 27, 11:40 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:
>>
> > I can set focus to my property grid by using propgrid.Focus - but how can
> > I
> > set the default property that is always first? Or just set focus to the
> > default property? Can this be done?
> Hi Derek,
>
> To select(or focus) a pre-defined property in a PropertyGrid control
> programmatically, you can use loop through GridItems and check "label"
> to determine which item to be selected:
>
> '------Begin-----
> Dim GridItem As GridItem = PropertyGrid1.SelectedGridItem
> Dim pGridItem As GridItem = GridItem.Parent
> For Each egi As GridItem In pGridItem.GridItems
> If egi.Label = "property_label_here" Then
> PropertyGrid1.Focus()
> egi.Select()
> End If
> Next
> '------End-------
>
> Hope this helps,
>
> Onur Güzel
something like IntelliSense or setting the value of a property within
textbox, and setting PropertyGrid item's value outside PropertyGrid
control is not possible, because "Value" property is ReadOnly.
Or, my another guess that if you want to highlight a property grid
item which is inside PropertyGrid control while initial key matches
with the text in textbox you can use that:
'--------------Begin-------------
Private Sub TextBox1_KeyDown(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.KeyEventArgs) _
Handles TextBox1.KeyDown
Dim GridItem As GridItem = _
PropertyGrid1.SelectedGridItem
Dim pGridItem As GridItem = _
GridItem.Parent
For Each egi As GridItem In _
pGridItem.GridItems
If egi.Label.StartsWith(e.KeyData.ToString) Then
PropertyGrid1.Focus()
egi.Select()
End If
Next
End Sub
'--------End----------
HTH,
Onur Güzel
Not quite. When I am in Visual Studio designing a form, and I highlight a
text box, when I then hit a letter, such as "T", it moves the cursor to the
property grid into the text property and enters "T" - then then user can
type the rest of the text in this property. Make sense?
"kimiraikkonen" <kimiraikkonen85@xxxxxx> wrote in message
news:fe617152-5304-485f-86d6-7ec85323e170@xxxxxx
On Sep 28, 8:33 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:As far as i understand (i couldn't guess well maybe), you're wanting
> Thank you for the answer. Just need to add one thing to it. I am running
> this code on the keydown event for a textbox control. It sets focus to the
> grid properly now. But I need to trap the keystroke that was hit and fill
> it
> in as the first character in the property, just like how Visual Studio
> works
> when you are on a control and hit the first keyboard character and it
> starts
> typing in the default property for that control. Is this possible?
>
> "kimiraikkonen" <kimiraikkone...@xxxxxx> wrote in message
>
> news:d0081a3d-c555-4854-a226-dfdfaa56b500@xxxxxx
> On Sep 27, 11:40 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:
>>
> > I can set focus to my property grid by using propgrid.Focus - but how
> > can
> > I
> > set the default property that is always first? Or just set focus to the
> > default property? Can this be done?
> Hi Derek,
>
> To select(or focus) a pre-defined property in a PropertyGrid control
> programmatically, you can use loop through GridItems and check "label"
> to determine which item to be selected:
>
> '------Begin-----
> Dim GridItem As GridItem = PropertyGrid1.SelectedGridItem
> Dim pGridItem As GridItem = GridItem.Parent
> For Each egi As GridItem In pGridItem.GridItems
> If egi.Label = "property_label_here" Then
> PropertyGrid1.Focus()
> egi.Select()
> End If
> Next
> '------End-------
>
> Hope this helps,
>
> Onur Güzel
something like IntelliSense or setting the value of a property within
textbox, and setting PropertyGrid item's value outside PropertyGrid
control is not possible, because "Value" property is ReadOnly.
Or, my another guess that if you want to highlight a property grid
item which is inside PropertyGrid control while initial key matches
with the text in textbox you can use that:
'--------------Begin-------------
Private Sub TextBox1_KeyDown(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.KeyEventArgs) _
Handles TextBox1.KeyDown
Dim GridItem As GridItem = _
PropertyGrid1.SelectedGridItem
Dim pGridItem As GridItem = _
GridItem.Parent
For Each egi As GridItem In _
pGridItem.GridItems
If egi.Label.StartsWith(e.KeyData.ToString) Then
PropertyGrid1.Focus()
egi.Select()
End If
Next
End Sub
'--------End----------
HTH,
Onur Güzel
On Sep 29, 1:17*am, "Derek Hart" <derekmh...@xxxxxx> wrote:Now got it what you desribe in VS. But couldn't associate your aim
> Not quite. When I am in Visual Studio designing a form, and I highlight a
> text box, when I then hit a letter, such as "T", it moves the cursor to the
> property grid into the text property and enters "T" - then then user can
> type the rest of the text in this property. *Make sense?
>
> "kimiraikkonen" <kimiraikkone...@xxxxxx> wrote in message
>
> news:fe617152-5304-485f-86d6-7ec85323e170@xxxxxx
> On Sep 28, 8:33 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:
>
>
>>
> > Thank you for the answer. Just need to add one thing to it. I am running
> > this code on the keydown event for a textbox control. It sets focus to the
> > grid properly now. But I need to trap the keystroke that was hit and fill
> > it
> > in as the first character in the property, just like how Visual Studio
> > works
> > when you are on a control and hit the first keyboard character and it
> > starts
> > typing in the default property for that control. Is this possible?>
> > "kimiraikkonen" <kimiraikkone...@xxxxxx> wrote in message>
> >news:d0081a3d-c555-4854-a226-dfdfaa56b500@xxxxxx
> > On Sep 27, 11:40 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:>
> > > I can set focus to my property grid by using propgrid.Focus - but how
> > > can
> > > I
> > > set the default property that is always first? Or just set focus to the
> > > default property? Can this be done?>
> > Hi Derek,>
> > To select(or focus) a pre-defined property in a PropertyGrid control
> > programmatically, you can use loop through GridItems and check "label"
> > to determine which item to be selected:>
> > '------Begin-----
> > Dim GridItem As GridItem = PropertyGrid1.SelectedGridItem
> > Dim pGridItem As GridItem = GridItem.Parent
> > For Each egi As GridItem In pGridItem.GridItems
> > If egi.Label = "property_label_here" Then
> > PropertyGrid1.Focus()
> > egi.Select()
> > End If
> > Next
> > '------End------->
> > Hope this helps,>
> > Onur Güzel
> As far as i understand (i couldn't guess well maybe), you're wanting
> something like IntelliSense or setting the value of a property within
> textbox, and setting PropertyGrid item's value outside PropertyGrid
> control is not possible, because "Value" property is ReadOnly.
>
> Or, my another guess that if you want to highlight a property grid
> item which is inside PropertyGrid control while initial key matches
> with the text in textbox you can use that:
>
> '--------------Begin-------------
> Private Sub TextBox1_KeyDown(ByVal sender As System.Object, _
> ByVal e As System.Windows.Forms.KeyEventArgs) _
> Handles TextBox1.KeyDown
>
> Dim GridItem As GridItem = _
> PropertyGrid1.SelectedGridItem
> Dim pGridItem As GridItem = _
> GridItem.Parent
> For Each egi As GridItem In _
> pGridItem.GridItems
> If egi.Label.StartsWith(e.KeyData.ToString) Then
> PropertyGrid1.Focus()
> egi.Select()
> End If
> Next
>
> End Sub
> '--------End----------
>
> HTH,
>
> Onur Güzel
with a textbox and typing in a defaul property of a propertygrid
control. For example, you can make a property default by using
"DefaultPropertyAttribute" in your class, for example you can design
your class whose default property is "Title" as follows:
<DefaultPropertyAttribute("Title")> _
Public Class SampleProperty
Private _Title As String
<CategoryAttribute("Application"), _
Browsable(True), _
[ReadOnly](False), _
BindableAttribute(False), _
DefaultValueAttribute(""), _
DesignOnly(False), _
DescriptionAttribute("Enter Title for the application")> _
Public Property Title() As String
Get
Return _Title
End Get
Set(ByVal Value As String)
_Title = Value
End Set
End Property
Now, when you associate that class with PropertyGrid using:
"PropertyGrid1.SelectedObject = New SampleProperty" preferably in
form1_load event, "Title" property is pre-selected in gray and when
you type in a textbox using the code above, it gets focus in blue and
starts to type the value of that property.
Sorry, if i got wrong,
Hope this helps,
Onur Güzel
Not sure I understand how this will solve the problem. In Visual Studio, if
I design a text box, then highlight it and hit a keyboard character, it will
set focus to the property grid, and enter that character in the "text"
property waiting for more input. Can I recreate this somehow?
"kimiraikkonen" <kimiraikkonen85@xxxxxx> wrote in message
news:1a2c3eeb-464a-4bb1-ba21-186ae472b3e0@xxxxxx
On Sep 29, 1:17 am, "Derek Hart" <derekmh...@xxxxxx> wrote:Now got it what you desribe in VS. But couldn't associate your aim
> Not quite. When I am in Visual Studio designing a form, and I highlight a
> text box, when I then hit a letter, such as "T", it moves the cursor to
> the
> property grid into the text property and enters "T" - then then user can
> type the rest of the text in this property. Make sense?
>
> "kimiraikkonen" <kimiraikkone...@xxxxxx> wrote in message
>
> news:fe617152-5304-485f-86d6-7ec85323e170@xxxxxx
> On Sep 28, 8:33 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:
>
>
>>
> > Thank you for the answer. Just need to add one thing to it. I am running
> > this code on the keydown event for a textbox control. It sets focus to
> > the
> > grid properly now. But I need to trap the keystroke that was hit and
> > fill
> > it
> > in as the first character in the property, just like how Visual Studio
> > works
> > when you are on a control and hit the first keyboard character and it
> > starts
> > typing in the default property for that control. Is this possible?>
> > "kimiraikkonen" <kimiraikkone...@xxxxxx> wrote in message>
> >news:d0081a3d-c555-4854-a226-dfdfaa56b500@xxxxxx
> > On Sep 27, 11:40 pm, "Derek Hart" <derekmh...@xxxxxx> wrote:>
> > > I can set focus to my property grid by using propgrid.Focus - but how
> > > can
> > > I
> > > set the default property that is always first? Or just set focus to
> > > the
> > > default property? Can this be done?>
> > Hi Derek,>
> > To select(or focus) a pre-defined property in a PropertyGrid control
> > programmatically, you can use loop through GridItems and check "label"
> > to determine which item to be selected:>
> > '------Begin-----
> > Dim GridItem As GridItem = PropertyGrid1.SelectedGridItem
> > Dim pGridItem As GridItem = GridItem.Parent
> > For Each egi As GridItem In pGridItem.GridItems
> > If egi.Label = "property_label_here" Then
> > PropertyGrid1.Focus()
> > egi.Select()
> > End If
> > Next
> > '------End------->
> > Hope this helps,>
> > Onur Güzel
> As far as i understand (i couldn't guess well maybe), you're wanting
> something like IntelliSense or setting the value of a property within
> textbox, and setting PropertyGrid item's value outside PropertyGrid
> control is not possible, because "Value" property is ReadOnly.
>
> Or, my another guess that if you want to highlight a property grid
> item which is inside PropertyGrid control while initial key matches
> with the text in textbox you can use that:
>
> '--------------Begin-------------
> Private Sub TextBox1_KeyDown(ByVal sender As System.Object, _
> ByVal e As System.Windows.Forms.KeyEventArgs) _
> Handles TextBox1.KeyDown
>
> Dim GridItem As GridItem = _
> PropertyGrid1.SelectedGridItem
> Dim pGridItem As GridItem = _
> GridItem.Parent
> For Each egi As GridItem In _
> pGridItem.GridItems
> If egi.Label.StartsWith(e.KeyData.ToString) Then
> PropertyGrid1.Focus()
> egi.Select()
> End If
> Next
>
> End Sub
> '--------End----------
>
> HTH,
>
> Onur Güzel
with a textbox and typing in a defaul property of a propertygrid
control. For example, you can make a property default by using
"DefaultPropertyAttribute" in your class, for example you can design
your class whose default property is "Title" as follows:
<DefaultPropertyAttribute("Title")> _
Public Class SampleProperty
Private _Title As String
<CategoryAttribute("Application"), _
Browsable(True), _
[ReadOnly](False), _
BindableAttribute(False), _
DefaultValueAttribute(""), _
DesignOnly(False), _
DescriptionAttribute("Enter Title for the application")> _
Public Property Title() As String
Get
Return _Title
End Get
Set(ByVal Value As String)
_Title = Value
End Set
End Property
Now, when you associate that class with PropertyGrid using:
"PropertyGrid1.SelectedObject = New SampleProperty" preferably in
form1_load event, "Title" property is pre-selected in gray and when
you type in a textbox using the code above, it gets focus in blue and
starts to type the value of that property.
Sorry, if i got wrong,
Hope this helps,
Onur Güzel
"Derek Hart" <derekmhart@xxxxxx> wrote in message
news:eAzNqojIJHA.3932@xxxxxx
Remember that the PropertyGrid has an object assigned to it that serves as
> Not sure I understand how this will solve the problem. In Visual Studio,
> if I design a text box, then highlight it and hit a keyboard character, it
> will set focus to the property grid, and enter that character in the
> "text" property waiting for more input. Can I recreate this somehow?
the source of the data it displays. I think what you need to do is alter
that object so that your desired property now contains the character that
was typed and then set your focus to the PropertyGrid and the property.
Sounds like you want to use a macro in VS.
"Derek Hart" wrote:
> Not sure I understand how this will solve the problem. In Visual Studio, if
> I design a text box, then highlight it and hit a keyboard character, it will
> set focus to the property grid, and enter that character in the "text"
> property waiting for more input. Can I recreate this somehow?
Thanks for the different information. Just can't get it working. If I have
a textbox highlighted (remember, I am in runtime mode with custom code that
draws a rectangle around the textbox), then I hit a keystroke, it does set
focus to the property grid, and sets focus to the property.
Now I tried this code:
CType(propGrid.SelectedObject, PropertiesLabel).LabelName =
e.KeyData.ToString
propGrid.Refresh
So now when I hit a keystroke, it does fill in the first character into the
grid. But here is the tricky part. It does not open the property up for
editing. It sets focus to the property. Now the user hits another keystroke
and it types over the first one. Is is possible after the Refresh is done,
to open up the property for editing, and be in the second character
position?
"atalanta" <atalanta@xxxxxx> wrote in message
news:9C94AA0A-009D-4CEB-A7AC-B70CB67C8BC3@xxxxxx
> Sounds like you want to use a macro in VS.
>
> "Derek Hart" wrote:
>>
>> Not sure I understand how this will solve the problem. In Visual Studio,
>> if
>> I design a text box, then highlight it and hit a keyboard character, it
>> will
>> set focus to the property grid, and enter that character in the "text"
>> property waiting for more input. Can I recreate this somehow?
| Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| rename property? | Mike | PowerShell | 0 | 12 Feb 2009 |
| How do I use the property of a property? | John Vottero | PowerShell | 2 | 28 Jul 2008 |
| Use my custom TypeDescriptor to obtains default Value on property inXAML Property Editor of Visual Studio 2008 | azerty | Avalon | 0 | 14 Apr 2008 |
| Value under the CPU property? | Cyberstorme | PowerShell | 2 | 10 Jan 2008 |
| How to set file property # to a value > 99 | KE7LYS | Vista file management | 2 | 07 May 2007 |