我可以在哪里放置代码以填充表格

时间:2018-11-27 20:25:02

标签: vb.net webforms

我有一个WebForms应用程序。它具有一个带有可编辑字段“数量”的表(“中继器”控件)。它还有一个搜索框和添加到购物车按钮。我面临的问题可能微不足道,但我不知道如何处理。如果我将填充表格的代码放在Page_Load()方法中,则搜索功能可以工作,但是当用户单击“添加到购物车”按钮时,“数量”字段中的输入将被覆盖。如果我将填充表格的代码放在Init()方法中,则不会发生这种情况,但是在这种情况下,Search功能不起作用,因为在Init()阶段,搜索字段当然为空。

您能告诉我我应该在哪里放置代码吗?

以下是一些代码:

这将基于搜索文本构建表:

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
...

        If Not IsNothing(Request.QueryString("group")) Then
            buildTable(CInt(Request.QueryString("cat")), CInt(Request.QueryString("group")), CurrentPage)
        Else
            buildTable(CInt(Request.QueryString("cat")), 0, CurrentPage)
        End If
    End If
...

Sub buildTable(ByVal itemCat As Integer, ByVal itemGroup As Integer, Optional ByVal pageNo As Integer = 1)
...
            If Not String.IsNullOrEmpty(txtSearch.Text) Then
                cmd.Parameters.AddWithValue("SearchText", txtSearch.Text)
            End If
...

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我可以使用Request.Form从Page_Init()的“搜索”文本框中获取值:

Dim searchText As String = Request.Form(txtSearch.UniqueID)?.ToString()
相关问题