0
我有一個帶有select鏈接的gridview。據說,當我點擊選擇鏈接時,DataKeyNames的特定細節應該出現。在gridview中選擇一行並在detailview中顯示
但是,對於我的情況,每當我點擊「選擇」時,只有一條記錄出來,它不會改變,並與選定的DataKeyNames的數據相匹配。我已經通過網絡讀了很多例子,相同,但它不能正常工作..
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:WholesaleConnectionString %>"
SelectCommand="SELECT [poNum], [retailerID] FROM [PO]"></asp:SqlDataSource>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="poNum" DataSourceID="SqlDataSource1" >
<Columns>
<asp:CommandField ShowSelectButton="True" />
<asp:BoundField DataField="poNum" HeaderText="poNum" InsertVisible="False"
ReadOnly="True" SortExpression="poNum" />
<asp:BoundField DataField="retailerID" HeaderText="retailerID"
SortExpression="retailerID" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:WholesaleConnectionString %>"
SelectCommand="SELECT [poNum], [quantity], [unitPrice], [totalAmt], [grandTotal] FROM [PO]">
<SelectParameters>
<asp:ControlParameter Name="poNum" ControlID="GridView1" PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
<asp:DetailsView ID="DetailsView1" runat="server" DataSourceID="SqlDataSource2"
Height="50px" Width="125px">
</asp:DetailsView>
對於SqlDataSource2,你需要設置在SelectCommand中的參數。例子:SELECT [poNum],[quantity],[unitPrice],[totalAmt],[grandTotal] FROM [PO] WHERE [poNum] = @poNum。您也可能需要爲此設置默認值。 –