On 07/06/2010 21:26, Ken MacDonald wrote:
Hi,
I've got a whole stack of event handlers, assigned via the usual something like....

my_button.Click += button_was_clicked

As it turns out, the initialization for the thing that has all these handlers may need to be run several times, and it seems like I ended up with multiple copies of the same event handler, and "button_was_clicked()" now gets invoked multiple times for EACH time I click my_button. It seems to be solved by just skipping the handler assignment if I've already done it before, but it seems odd that the same EH would be assigned and fired twice.

It would seem odder to me if you added an event handler multiple times and it *wasn't* called. :-)

The less programming languages read your mind and work out what they *think* you meant the better. If you don't want an event handler installed multiple times then don't add it multiple times...

Michael Foord

Is this really what I'm seeing? I can see a case for assigning multiple *different* EH's:

my_button.Click += event_handler_1
my_button.Click += event_handler_2

but then this begs the question, is there a defined order in which the EH's will fire? I looked thru multiple python/IronPython books and googled, but came up empty on both questions..... Hopefully someone here understands these things better than I do....
Ken


_______________________________________________
Users mailing list
Users@lists.ironpython.com
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


--
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/blog

READ CAREFULLY. By accepting and reading this email you agree, on behalf of your 
employer, to release me from all obligations and waivers arising from any and all 
NON-NEGOTIATED agreements, licenses, terms-of-service, shrinkwrap, clickwrap, browsewrap, 
confidentiality, non-disclosure, non-compete and acceptable use policies ("BOGUS 
AGREEMENTS") that I have entered into with your employer, its partners, licensors, 
agents and assigns, in perpetuity, without prejudice to my ongoing rights and privileges. 
You further represent that you have the authority to release me from any BOGUS AGREEMENTS 
on behalf of your employer.


_______________________________________________
Users mailing list
Users@lists.ironpython.com
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to