2

私は現在、c#.Net の PropertyGrid でいくつかの DateTime プロパティに取り組んでいます。デフォルトのドロップダウン日時ピッカーを使用しています。

私の質問:完全な日付と時刻を表示する方法はありますか? デフォルトでは、時間が設定されていない場合は日付が表示されますが、ゼロ値も必要です。例: "09.11.2009" の代わりに "09.11.2009 00:00" を表示したい。

これにはカスタム TypeConverter または Editor を使用する必要がありますか? 私はこのプロパティグリッドでとても迷子になり、悲しくなります...

どんな助けでも大歓迎です!ありがとう :)

4

1 に答える 1

4

はい、独自の TypeConverter が必要です。DateTimeConverter から派生させ、ConvertTo メソッドをオーバーライドします。Reflector でこのメソッドを見ると、内部に次のコードが表示されます。

if (time.TimeOfDay.TotalSeconds == 0.0)
    return time.ToString("yyyy-MM-dd", culture);

たとえば、それを削除するだけです。

ニコラス

于 2009-11-09T16:51:06.990 に答える