我有一个 DropDownList 列出了数据库表(.accdb)中的用户,还有一个 GridView 应该列出用户登录时存储在同一数据库的另一个表中的日期。
我将下拉列表与链接到用户表的 ObjectDataSource 和 gridview 链接到链接到 lof 表并具有如下选择查询的 objectdatasource 链接:
SELECT Data
FROM log
WHERE (User = ?)
我将参数设置为在 DropDownList 中选择的参数。
这是我的问题:DropDownList 正确显示了所有用户,但 GridView 甚至没有显示在页面上。我尝试使用回发和 GridView.DataBind() 但没有一个有效。
我很确定这是我犯的一个愚蠢的错误,但我找不到它。
生成的 ASPX 代码:
<asp:DropDownList ID="DropDownList1" runat="server"
DataSourceID="ObjectDataSource1" DataTextField="Utilizator"
DataValueField="ID"
onselectedindexchanged="DropDownList1_SelectedIndexChanged"
AutoPostBack="True">
</asp:DropDownList>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
OldValuesParameterFormatString="original_{0}" SelectMethod="GetData"
TypeName="DataSet1TableAdapters.DataTable1TableAdapter">
</asp:ObjectDataSource>
<asp:ObjectDataSource ID="ObjectDataSource2" runat="server"
InsertMethod="Insert" OldValuesParameterFormatString="original_{0}"
SelectMethod="GetDataBy" TypeName="DataSet1TableAdapters.logTableAdapter">
<InsertParameters>
<asp:Parameter Name="Data" Type="String" />
<asp:Parameter Name="Utilizator" Type="String" />
</InsertParameters>
<SelectParameters>
<asp:ControlParameter ControlID="DropDownList1" DefaultValue=""
Name="Utilizator" PropertyName="SelectedValue" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<br />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="ObjectDataSource2" Height="145px" Width="107px">
<Columns>
<asp:BoundField DataField="Data" HeaderText="Data" SortExpression="Data" />
</Columns>
</asp:GridView>