asp.net行数VB.net
因此,我想在使用下拉列表进行筛选后,计算当前可以在gridview中看到的项目的行数 如果我选择一个新项目,它将显示我选择的上一个值的计数 例如,我在DDL中选择了Beamer,其中有4项,但在此之前我选择了Copier,其中一项有8项,选择Beamer后,我的标签将显示Copier中的8项,依此类推 我的代码:asp.net行数VB.net,asp.net,vb.net,Asp.net,Vb.net,因此,我想在使用下拉列表进行筛选后,计算当前可以在gridview中看到的项目的行数 如果我选择一个新项目,它将显示我选择的上一个值的计数 例如,我在DDL中选择了Beamer,其中有4项,但在此之前我选择了Copier,其中一项有8项,选择Beamer后,我的标签将显示Copier中的8项,依此类推 我的代码: Protected Sub ddlType_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlType
Protected Sub ddlType_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlType.TextChanged
Dim intAantal As Integer = gvRapportObjecten.Rows.Count
lblAantal.Text = "Het aantal items is: " & intAantal.ToString
我认为问题在于
ddlType\u SelectedIndexChanged
事件上的代码在数据过滤器之前执行,因此您更改ddl上的值,它计算gridview上的当前行数,然后更新gridview。
您需要在GridviewDataBind()之后移动代码查看grid view的所有事件
我看到您使用了selectedindexchanged
事件。此事件在加载网格后发生。您应该使用selectedIndexChangeing
事件,该事件在加载网格之前触发
我希望这有帮助 错误是什么?我没有得到错误,只是我需要显示5,而不是上一次选择的11。数据在网格中何时更改?我的意思是您将数据绑定到它,或者您手动更改它?我将数据绑定到它,在我在下拉列表中选择一个新值后,gridview会更改数据以确保gridview已更新,这段代码可能位于PreRender
事件中。Thx ConnorsFan,PreRender为我做了这件事!
<asp:SqlDataSource ID="GridDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:LPIProjectConnection %>"
SelectCommand="SELECT object.id, object.label, object.object_type, object_type.name FROM object_type LEFT JOIN [object] ON object_type.id = object.object_type" FilterExpression="name = '{0}'">
<FilterParameters>
<asp:ControlParameter Name="name" ControlID="ddlType" PropertyName="SelectedValue" />
</FilterParameters>