我有一个Gridview,填充条目很好。
我需要做的是启用它,以便在文本框中输入字符串时,它会更改SQLDatasource参数以搜索匹配的条目。
所以这是正在使用的ASPx文件。
<%@ Page Language="vb" AutoEventWireup="True" CodeBehind="test.aspx.vb" MasterPageFile="~/Site1.Master"%>
<asp:Content ID="content" runat="server" ContentPlaceHolderID="Content">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<span class="country"></span>
<div align="right">
<asp:TextBox runat="server" ID="textbox1"></asp:TextBox>
<asp:Button runat="server" Text="Search" ID="Button1" OnClientClick="Button1_click" PostBackUrl="~/test.aspx" />
</div>
<br />
<br />
<div align="center">
<asp:UpdatePanel runat="server" ID="updatepanel">
<ContentTemplate>
<asp:SqlDataSource runat="server" ID="datab" SelectCommand="SELECT * FROM [TEST] where [unit]=@unit" ConnectionString="<%$ ConnectionStrings:Con %>" ProviderName="<%$ ConnectionStrings:Con.ProviderName %>">
<SelectParameters>
<asp:Parameter DefaultValue="UK" Name="unit" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
<asp:GridView ID="View" DataSourceID="datab" runat="server" CssClass="table" AllowSorting="True" AutoGenerateColumns="True" DataKeyNames="Id">
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
以上工作absolutley罚款,我可以手动更改参数,它将工作。但是我无法通过用户提交来更新它。
回溯:
Public Class test
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim unit As String = textbox1.Text
datab.UpdateParameters("Unit").DefaultValue = unit
updatepanel.Update()
End Sub
End Class
我猜测我在引用页面后面的代码时出错了,因为当按下按钮时页面似乎刷新了。
感谢任何帮助。
****** ********编辑
我尝试在后台文件中使用以下代码,但它现在不会在实际页面上显示任何内容。
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim DS As SqlDataSource = New SqlDataSource
Dim con As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\local\test.accdb"
Dim sc As String = "SELECT * FROM [TEST] where [unit]=@unit"
DS.ID = "datab"
DS.ConnectionString = con
DS.SelectCommand = sc
DS.SelectParameters("Unit").DefaultValue = "UK"
View.DataSource = datab
View.DataBind()
End Sub