2 выпадающий список и календарь для отображения gridview в C#
У меня есть простая система бронирования билетов для моего школьного проекта и я использую форму windows в asp.net-да. у меня есть простой поиск, где человек может ввести bickup, drop off и дату. я использую выпадающий список для bickup и dropoff, а также обычный календарь Даты, прикрепленный к текстовому окну. но я не могу заполнить gridview , например, автобусные поездки, доступные из одной позиции в другую в определенные даты, например из A в B в 24 августа. моя дата хранится как дата ассортиментом тип nvarchar. я могу привязать выпадающий список, но кнопка поиска ничего не показывает.
ниже приведен мой передний код и внутренний код. пожалуйста, мне нужна помощь, я новичок в c# и кодировании в целом.
<form id="form1" runat="server"> <div> <asp:TextBox ID="tbdates" runat="server"></asp:TextBox> <asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="Button" /> <asp:DropDownList ID="DropDownList1" runat="server"> </asp:DropDownList> <asp:DropDownList ID="DropDownList2" runat="server"> </asp:DropDownList> </div> <asp:Calendar ID="Calendar1" runat="server" OnSelectionChanged="Calendar1_SelectionChanged"></asp:Calendar> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CssClass="table table-hover table-striped"> <Columns> <asp:BoundField DataField="BusNo" HeaderText="Bus Number" /> <asp:BoundField DataField="date" HeaderText="Date" /> <asp:BoundField DataField="Time" HeaderText="Time" /> <asp:BoundField DataField="Bickup" HeaderText="Bick Up" /> <asp:BoundField DataField="DropOff" HeaderText="Drop Off" /> <asp:BoundField DataField="Fare" HeaderText="Fare" /> </Columns> <HeaderStyle BackColor="#33CCFF" /> </asp:GridView> <asp:Button ID="Button1" runat="server" Text="Button" /> <br /> </form>
Что я уже пробовал:
<pre> public partial class DriverDisplay : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { fill_DropDownList1(); fill_DropDownList2(); } } private void fill_DropDownList1() { try { SqlConnection con2 = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDatabase1ConnectionString"].ConnectionString); string sql = "SELECT * FROM Ticket"; SqlCommand cmd = new SqlCommand(sql, con2); SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataTable dt = new DataTable(); adapter.Fill(dt); DropDownList1.DataSource = dt; DropDownList1.DataTextField = "Bickup"; DropDownList1.DataValueField = "Bickup"; DropDownList1.DataBind(); } catch (Exception) { } } private void fill_DropDownList2() { try { SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDatabase1ConnectionString"].ConnectionString); string sql = "SELECT * FROM Ticket"; SqlCommand cmd = new SqlCommand(sql, con); SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataTable dt = new DataTable(); adapter.Fill(dt); DropDownList2.DataSource = dt; DropDownList2.DataTextField = "Dropoff"; DropDownList2.DataValueField = "DropOff"; DropDownList2.DataBind(); } catch (Exception) { } } protected void Button2_Click(object sender, EventArgs e) { Calendar1.Visible = true; } protected void Calendar1_SelectionChanged(object sender, EventArgs e) { tbdates.Text = Calendar1.SelectedDate.ToShortDateString(); Calendar1.Visible = false; } protected void Button1_Click(object sender, EventArgs e) { //DateTime date = Convert.ToDateTime(tbdates.Text); SqlConnection sqlcon = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDatabase1ConnectionString"].ToString()); sqlcon.Open(); string query = "select * from Ticket where date = @Date"; SqlCommand cmd = new SqlCommand(query, sqlcon); SqlParameter date = cmd.Parameters.Add("@Date", SqlDbType.DateTime); SqlDataReader rdr = cmd.ExecuteReader(); GridView1.DataSource = rdr; GridView1.DataBind(); sqlcon.Close(); } } }