我有一个内容VB页面,我尝试以编程方式更改SqlDataSource中的Select。
我的代码:
<asp:Content ID="Content6" ContentPlaceHolderID="MainContent" Runat = "server">
<table width="630">
<tr> <td>
Dim Label2 As New Label()
Label2.Text = "Bro"
</td>
<td>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT * FROM [Docs1] WHERE ([Type] = @Type)">
<SelectParameters>
<asp:ControlParameter Name="Type"
ControlID="Label2"
PropertyName="Text"
/>
</SelectParameters>
</asp:SqlDataSource>
</td>
<td>
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource2" CellPadding="4" ForeColor="#333333"
GridLines="None" Font-Names="Arial"
>
<AlternatingRowStyle BackColor="White" Font-Size="XX-Small" Font-Bold="False"
ForeColor="#284775" Font-Names="Times New Roman" Font-Underline="False" />
<Columns>
.......
</asp:GridView>
SqlDataSource没有获得Label2.Text。我做错了什么? 我必须在页面上多次更改select参数(从“BLah1”到“Blah2”等)而不做任何来自用户的操作,因此除了page_Load之外没有任何按钮等基本上没有事件。我想使用隐形标签并更改其文本,并以这种方式 - 更改选择。
答案 0 :(得分:0)
您还应该将标签添加到表单并设置其ID属性。即。
Dim Label2 As New Label()
Label2.ID = "Label2"
Form.Controls.Add(Label2)
Label2.Text = "Bro"