Skocz do zawartości
Kyle

[MySQL , C#] Problem z formatem daty.

Rekomendowane odpowiedzi

Witajcie

 

Napisałem program w C# (WPF+XAML), który łączy się z bazą MySQL i wyświetla z niej dane w DataGrid.

 

I teraz tak:

Jak wpiszę polecenie w MySQL Command Line Client :

SELECT KOLUMNA_Z_DATAMI from tabela_z_danymi;

To dostaję to czego chcę, czyli daty w formacie RRRR-MM-DD ... fajnie.

 

Teraz to samo polecenie wpisane w strumieniu/stringu, już w kodzie programu C#, czyli

MojString = "SELECT KOLUMNA_Z_DATAMI from tabela_z_danymi;";

Daje mi daty w kolumnie DataGrid w formacie

RRRR-MM-DD 12:00:00 AM

 

... czyli z godzinami, minutami, sekundami i wskazaniem AM (wszędzie te same, czyli 12:00:00 AM) ... dla czego? Jak się tego pozbyć? ... w ogóle dla czego w linii komend pokazuje co innego, przy tej samej komendzie?

Edytowane przez Kyle

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dlaczego? Nie wiem. Nie jestem bogiem C#, więc mogę podejrzewać, że domyślny (albo ustawiony gdzieś po drodze) styl formatowania DataGrid, dla pól z datą ma właśnie taką postać.

Klik 1, klik 2

 

Gdyby to był problem po stronie SQL, można by próbować zrobić tak:

SELECT cast(KOLUMNA_Z_DATAMI as date) as KOLUMNA_Z_DATAMI FROM...
...albo sformatować datę przez date_format()
  • Upvote 1

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dzięki za wskazówkę.

 

Znalazłem takie rozwiązanie:

 

W kodzie, dodajemy metodę:

	    private void OnAutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)	    {		    if (e.PropertyType == typeof(System.DateTime))			    (e.Column as DataGridTextColumn).Binding.StringFormat = "dd/MM/yyyy";	    }

A w części z XAML, tam gdzie mamy parametry DataGrid, dodajemy kolejny parametr:

AutoGeneratingColumn="OnAutoGeneratingColumn"

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...