下拉列表日期格式

时间:2014-04-08 18:38:11

标签: c# asp.net drop-down-menu

我使用DataTable填充Web表单上的下拉列表,以及使用存储过程查询数据库。该列表仅从数据库中检索一个字段,并将与gridview一起使用以查看在特定日期进行的所有预留。

除日期格式外,一切正常。现在它显示日期以及小时,分钟和秒。我已经尝试使用WebForme的DataFormatString属性,但没有运气。

网络表单:

  <b>Please select a date:</b>
  <asp:DropDownList ID="ddlDateSelection" runat="server" DataFormatString="{0:MM/dd/yyyy}"></asp:DropDownList>
  <br />
  <asp:Label ID="lblError" runat="server" CssClass="validate"></asp:Label>

用于查询数据库的代码:

protected void Page_Load(object sender, EventArgs e)
    {
  if (!Page.IsPostBack)
    loadDates();
}

protected void loadDates()
{
  DataTable dates = new DataTable();

  using (SqlConnection con = new SqlConnection(DBAccess.GetConnectionString()))
  {
    SqlCommand cmd = new SqlCommand("usp_sel_ReservationDates", con);
    cmd.CommandType = CommandType.StoredProcedure;

    try
    {
      SqlDataAdapter adapter = new SqlDataAdapter(cmd);
      adapter.Fill(dates);
      ddlDateSelection.DataSource = dates;
      ddlDateSelection.DataTextField = "ReservationDate";
      ddlDateSelection.DataBind();
    }
    catch (Exception ex)
    {
      lblError.Text = "Something bad has happened.  Please try again.<br />Message: " + ex;
    }
  }
  ddlDateSelection.Items.Insert(0, new ListItem("Please Select", "0"));
}

任何帮助都将非常感谢,因为这是我自己的学习项目。感谢

2 个答案:

答案 0 :(得分:2)

可能你需要引用正确的属性

 <asp:DropDownList ID="ddlDateSelection" runat="server" 
                   DataTextFormatString="{0:MM/dd/yyyy}">
 </asp:DropDownList>

DropDownList properties

答案 1 :(得分:1)

您可以编辑SQL代​​码以仅返回日期

SELECT CONVERT (DATE, GETDATE()) 

  

结果:2013-07-14