Генерация динамического представления сетки на основе выпадающего списка (asp.net )

#asp.net

#asp.net

Вопрос:

Я пытаюсь заставить свой gridview динамически генерировать то, что отображается, на основе выбора в выпадающем списке. Кажется, я не могу заставить его отображать что-либо, хотя я не понимаю, почему это было бы не так. Любая помощь была бы высоко оценена.

 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ticketSales.aspx.cs" Inherits="CSC340.ticketSales" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <link href="styles/bootstrap.min.css" rel="stylesheet" />
    <link href="styles/tickets.css" rel="stylesheet" />
</head>
<body>
    <div class="container">
    <header class="jumbotron">
    </header> 
    <main>
        <form id="form1" runat="server" class="form-horizontal" role="form">
        <h2>Airline Tickets by Eric R</h2>
            <div>
                Select a passenger:
                <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" DataSourceID="SqlDataSource1" DataTextField="lastName" DataValueField="lastName"></asp:DropDownList>
            </div>  
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ticketid" DataSourceID="SqlDataSource1" cssclass="table table-bordered table-striped">
                <Columns>
                    <asp:BoundField DataField="ticketid" HeaderText="ticketid" ReadOnly="True" SortExpression="ticketid"></asp:BoundField>
                    <asp:BoundField DataField="purchaseDate" HeaderText="purchaseDate" SortExpression="purchaseDate"></asp:BoundField>
                    <asp:BoundField DataField="pricepaid" HeaderText="pricepaid" SortExpression="pricepaid"></asp:BoundField>
                    <asp:BoundField DataField="sales_channel" HeaderText="sales_channel" SortExpression="sales_channel"></asp:BoundField>
                    <asp:BoundField DataField="farebasisIDFK" HeaderText="farebasisIDFK" SortExpression="farebasisIDFK"></asp:BoundField>
                    <asp:BoundField DataField="restrictions" HeaderText="restrictions" SortExpression="restrictions"></asp:BoundField>
                    <asp:BoundField DataField="passengerid" HeaderText="passengerid" SortExpression="passengerid"></asp:BoundField>
                </Columns>
            </asp:GridView>
            <asp:SqlDataSource runat="server" ID="SqlDataSource1" ConnectionString='<%$ ConnectionStrings:ConnectionString %>' SelectCommand="SELECT ticket.ticketid, ticket.sales_channel, ticket.pricepaid, ticket.passengerid, ticket.farebasisIDFK, ticket.purchaseDate, passenger.lastName, passenger.firstName, farebasis.restrictions, passenger.passengerid AS Expr1 FROM ticket INNER JOIN passenger ON ticket.passengerid = passenger.passengerid AND ticket.passengerid = passenger.passengerid INNER JOIN farebasis ON ticket.farebasisIDFK = farebasis.farebasisID WHERE (passenger.lastName = @lastName)">
                <SelectParameters>
                    <asp:ControlParameter ControlID="DropDownList1" PropertyName="SelectedValue" Name="lastName"></asp:ControlParameter>
                </SelectParameters>
            </asp:SqlDataSource>
        </form>
    </main>
    </div>
</body>
</html>  

Комментарии:

1. Вы должны использовать отдельные asp:SqlDataSource s для asp:DropDownList и asp:GridView .

2. Тот же источник данных для GridView и DropDownList ??