WPF中的内联事件处理程序

时间:2014-11-10 07:16:39

标签: c# wpf-controls inline

我通过后面的代码动态创建文本框控件。我必须在新创建的文本框的'LostFocus'事件上绑定一个handker。然后将其添加到列表框中。我可以使用下面的代码执行此操作。

TextBox txtBox = new TextBox();
txtBox.Text ="XXXX";
txtBox.Width = 100;
txtBox .LostFocus += new RoutedEventHandler(updateTextHandler);
listBox.Items.Add(txtBox);

但是,我想缩短这段代码,并且喜欢

listServer.Items.Add(new TextBox()
                {
                    Text = "XXXXX",
                    Width = 100

                });

如何为内联初始化的控件添加事件处理程序?我试过了,但没有用

this.LostFocus +=new RoutedEventHandler(updateButtonHandler) 

1 个答案:

答案 0 :(得分:0)

您可以阅读MSDN

  

对象初始值设定项允许您在创建时将值分配给对象的任何可访问字段或属性

事件不是字段或属性,因此您无法在初始化程序中设置它们。特别是因为=无法访问它们,只能通过+=访问它们。