1

日時をデータベースに更新しました。2012 年 5 月 2 日です。しかし、そのデータベースからこの値をテキストボックスに表示したい場合、次のように表示されます: 05/02/2012.

この問題を解決するのを手伝ってください。フォーマットが更新されたように、その値をテキストボックスに表示したい: 5/2/2010

前もって感謝します

4

8 に答える 8

2

データをDateTimeオブジェクトとして持っている場合はToString(string)、フォーマット文字列「d/M/yyyy」またはここで説明されている他のフォーマットでオーバーロードを使用して出力をフォーマットできます: http://msdn.microsoft.com/en-us /library/8kb3ddd4.aspx

于 2012-05-18T22:07:33.690 に答える
1

これを試して :

Textbox1.Text=datevalue.ToString("MM/dd/yyyy");
于 2015-03-03T21:05:52.367 に答える
1
SELECT CAST(DATEPART(MM,GETDATE()) AS VARCHAR(2))+'/'
+CAST(DATEPART(DD,GETDATE()) AS VARCHAR(2))+'/'
+CAST(DATEPART(YYYY,GETDATE()) AS VARCHAR(4))
于 2012-05-18T22:09:06.370 に答える
0

これを試しToString("d/M/yyyy")て、目的の形式を指定してください。

コードを見せていただければ、もっとお手伝いできます。

于 2012-05-18T22:06:30.940 に答える
0

For doing that the best way is saving datetime into the database as a string. then after retrieving the string I can convert that to datetime. and it will show the correct format.

于 2012-10-31T20:19:24.437 に答える
0

ToString("MM/dd/yyyy")値を割り当てながら使用できます。
テキストボックスがTextbox1あり、日付値がDateTimeオブジェクトdatevalueに格納されている場合は、次のようにする必要があります。

Textbox1.Text=datevalue.ToString("MM/dd/yyyy");

于 2012-05-18T22:15:37.417 に答える
0

このデータを日時型として SQL Server に保存すると、元の形式が失われます。ただし、先頭に 0 を付けずにデータを表示したい場合は、テキスト ボックスに対してこれを行うことができます。

mytextbox.Text = dt.Month.ToString().TrimStart('0') + "/" + dt.Day.ToString().TrimStart('0') + "/" + dt.Year.ToString()

于 2012-05-18T22:16:57.017 に答える
0

結果の柔軟性が失われるため、複雑なクエリを使用してデータをいじったり、アプリケーションに到達する前にデータを事前にフォーマットしたりすることは、通常はお勧めできません。

SQL からのデータは、一般的な DateTime スタンプとして適切にフォーマットされています。@Chris-Sinclair が例へのリンクで示唆しているように、アプリケーションが表示目的でそれをマッサージできるようにします。

WPF を使用する場合の最善の方法は、UI 要素が適切と思われるテキストを書式設定できるようにすることです。これにより、クラス インスタンスのコンテンツは変更されません。これはまだ DateTime オブジェクトであるため、完全な値を失うことなく、DateTime の「計算」やその他の操作を行うことができます。

以下は、WPF UI 要素がフォーマットを決定するエレガントコードの例です。

<TextBlock Text="{Binding Date, StringFormat={}{0:MM/dd/yyyy hh:mm tt}}" />

あなたの特定の目的のために、正しい行は次のようになります

<TextBlock Text="{Binding Date, StringFormat={}{0:M/d/yyyy hh:mm tt}}" />
于 2012-05-18T22:17:59.227 に答える