Hi All,<br><br>Here is a little app that illustrates an issue that we&#39;ve just discovered:<br>---------------------------------------------------------------------------------------------------<br>
---------------------------------------------------------------------------------------------------<br>import clr<br>clr.AddReference(&#39;System.Windows.Forms&#39;)<br>clr.AddReference(&#39;IronPython&#39;)<br><br>from System.Windows.Forms import Form, Application, TextBox<br>
<br>class MyTextBox(TextBox):<br>&nbsp;&nbsp;&nbsp; def ProcessDialogKey(self, key):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print key<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #super(MyTextBox, self).ProcessDialogKey(key) # Fails with a stack overflow<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #TextBox.ProcessDialogKey(self, key) # Fails with: Microsoft.Scripting.ArgumentTypeException: cannot access protected member ProcessDialogKey without a python subclass of TextBoxBase<br>
<br>class ThisApp(Form):<br><br>&nbsp;&nbsp;&nbsp; def __init__(self):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Form.__init__(self)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tb = MyTextBox()<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.Controls.Add(tb)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Application.Run(self)<br><br><br>def main():<br>&nbsp;&nbsp;&nbsp; f = ThisApp()<br>
<br><br>if __name__ == &#39;__main__&#39;:<br>&nbsp;&nbsp;&nbsp; main()<br>
---------------------------------------------------------------------------------------------------<br>
---------------------------------------------------------------------------------------------------<br><br>Uncommenting either of the two commented lines produces the results on that line when a key is pressed in the text box. The second method of calling ProcessDialogKey worked in IPy 1.<br>
<br>This is likely to block our progress on porting Resolver One to IPy2 unless there is a different way of accomplishing the same thing.<br><br>Thanks<br>Glenn &amp; Will<br>