我试图在某些VB.Net代码中使用lambda,本质上是试图在调用数据绑定(bind)时设置一个标志。

简化后看起来像这样:

Dim dropdownlist As New DropDownList()
dropdownlist.DataSource = New String() {"one", "two"}
Dim databoundCalled As Boolean = False
AddHandler dropdownlist.DataBound, Function(o, e) (databoundCalled = True)
dropdownlist.DataBind()

我的理解是,应该将databoundCalled变量设置为true,因为变量始终保持为false,显然我丢失了一些东西。

我需要做什么来修复它?

最佳答案

vb.net中的单行Lambda总是表达式,您的lambda表达式所做的基本上是说如果您的C#家伙未设置databoundCalled = True或(databoundCalled == True),则未设置databoundCalled = True

10-06 05:00