[IronPython] focus and selecting text in a TextBox with IronPython

Jimmy Schementi Jimmy.Schementi at microsoft.com
Tue Apr 6 08:42:32 CEST 2010


Does the equivalent C#/VB code work? I'd think not; it's just a matter of using the TextBox selection APIs correctly. This sounds like a similar issue: http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/81b43024-6164-43c7-a6b6-e2f55c9412c8. Basically, I think you need to call Focus() again after selecting the text programmatically; I ran into the same issue while building my RubyConf demo: http://github.com/jschementi/rubyconf2009/blob/master/sketchscript/features/start.rb#L204.

~js

From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Ken MacDonald
Sent: Wednesday, March 24, 2010 1:54 PM
To: Discussion of IronPython
Subject: [IronPython] focus and selecting text in a TextBox with IronPython

I'm trying to capture the event of focus being shifted into a text box via mouse click, and would like to highlight the existing text, so that if I start typing the selected text will disappear. i.e. the the box initially contains "<Enter Name>", I click into the box, "<Enter Name>" is highlighted, and if I type "fred" the initial text will disappear, leaving only "fred". I can capture the focus with:

textbox.GotKeyboardFocus += name_keyboard_focus

but this handler is doing something wrong:

    def name_keyboard_focus(self, sender, args):
        #alert("got focus!")
        textbox = self.control("NewName")
        textbox.Focus()
        textbox.SelectAll()

If I add:

        textbox.Cut()

or:
        alert(textbox.SelectedText)

at the end, it's obvious that the SelectAll() has worked, but the text is NOT highlighted, and if I type "fred" I get "fred" appended to the original text, "<Enter Name>fred".

Any clues appreciated.
Ken
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20100406/936c752c/attachment.html>


More information about the Ironpython-users mailing list