2015-08-29 46 views
1

我對WPF的工作,我用自動生成網格視圖...存儲在SQL Server日期時間2014數據庫格式2015-08-30但是當它顯示了自動生成它表現爲2015-08-30 12:00:00 AM只顯示在自動生成的網格視圖WPF C#日期

我想它顯示爲2015-08-30只有

string ConString = // my Connection string 
string CmdString = string.Empty; 

using (SqlConnection con = new SqlConnection(ConString)) 
{ 
    CmdString = "SELECT * FROM [dbo].[Client_Info_Detail]"; 

    SqlCommand cmd = new SqlCommand(CmdString, con); 
    SqlDataAdapter sda = new SqlDataAdapter(cmd); 

    DataTable dt = new DataTable("Client"); 
    sda.Fill(dt); 

    grdClient.ItemsSource = dt.DefaultView; 
} 
+0

哪裏是哪裏你正在閱讀或寫'DateTime'的一部分嗎? –

回答

2

我有同樣的問題,找到這個代碼隱藏工作: 必須設置這個事件爲您的數據網格:

private void yourDatagrid_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e) 
{ 
    if (e.PropertyType == typeof(DateTime))//if a column is typeof DateTime 
    { 
     (e.Column as DataGridTextColumn).Binding.StringFormat = "yyyy-MM-dd";//set your date format 
    } 
} 

這將在格式的數據網格格式的任何日期列。

2

你應該能夠做這樣的事情:

<dgv:DataGridTextColumn Binding="{Binding YourDate, StringFormat=\{0:yyyy-mm-dd\}}" /> 
2

您可以直接在XAML與BindingStringFormat屬性的幫助下設定日期格式(System.Windows.Data.Binding):

<DataGridTextColumn Header="Date" Binding="{Binding Path=Date, StringFormat='yyyy-MM-dd'}" /> 
相關問題