gpt4 book ai didi

vb.net - 与 VB .net Lambdas 斗争

转载 作者:行者123 更新时间:2023-12-04 17:14:09 25 4
gpt4 key购买 nike

我试图在一些 VB.Net 代码中使用 lambdas,本质上我试图在调用 databound 时设置一个标志。

简化后看起来像这样:

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。

我需要做什么来修复它?

最佳答案

在查看了您的代码并摸不着头脑之后,我找到了一个有效的解决方案。现在,为什么这适用于你所拥有的,我不清楚。也许这至少会帮助你朝着正确的方向前进。关键的区别是我有一个将值设置为 true/false 的方法。其他一切都是一样的。

这是我的整个 Web 项目代码:

Partial Public Class _Default
Inherits System.Web.UI.Page

Dim databoundCalled As Boolean = False
Dim dropdownlist As New DropDownList()

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write(databoundCalled)
Bind()
Response.Write(databoundCalled)

End Sub

Sub Bind()
AddHandler dropdownlist.DataBound, Function(o, e) (SetValue(True))

dropdownlist.DataSource = New String() {"one", "two"}
dropdownlist.DataBind()
End Sub

Function SetValue(ByVal value As Boolean) As Boolean
databoundCalled = value
Return value
End Function
End Class

我希望这有帮助!

关于vb.net - 与 VB .net Lambdas 斗争,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/974254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com