2011-10-13 25 views
0

我只是數據綁定的數據(含日期值),我有DataReader的如下面的代碼有:如何通過代碼在DetailsView網格中格式化日期字段?

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    Dim id As Integer = Request.QueryString("id") 

    'Start connection 
    Dim cs As String = ConfigurationManager.ConnectionStrings("Access 2010").ConnectionString 
    Dim cn As New OleDbConnection(cs) 
    cn.Open() 

    'Retrieve Jobs Data 
    Dim cmd As New OleDbCommand 
    With cmd 
     .Connection = cn 
     .CommandText = "SELECT Nome, Descricao, Data, Autor FROM Jobs WHERE ID = @ID" 
     .CommandType = CommandType.Text 
     .Parameters.AddWithValue("@ID", id) 
    End With 
    Dim dbReader As OleDbDataReader = cmd.ExecuteReader() 

    If Not Page.IsPostBack Then 
     'Populate Dropdown Jobs 
     dtlJob.DataSource = dbReader 
     dtlJob.DataBind() 
    End If 
    dbReader.Close() 
End Sub 

而且我得到的值一樣30/12/1899 00: 00:51。我檢查了我的數據庫,記錄是正確的:它出現在2011年12月12日。我如何格式化日期字段,因爲我剛剛使用了.DataSource.DataBind

回答

1

在aspx頁面上查找詳細信息視圖,並且需要將DataFromatString標記添加到綁定字段。這將是這樣的:

<asp:BoundField DataField="datetimefield" HeaderText="DateTime" DataFormatString="{0:d}" /> 
+0

每當我添加此,它不正確的日期字段加入,並保持它作爲一個獨立的領域 –

+0

羅德里戈我想你一定DetailsView控件設置爲自動生成的行。在詳細信息視圖的標籤中,您必須將AutoGenerateRows =「False」 這樣做意味着您必須將所有其他字段添加爲上面的綁定字段。 – philb28