作成日: 2025/09/12 最終更新日: 2025/09/19
文書種別
不具合
発生環境
.NET8.0 、.NET 9.0
状況
現象確認済み
詳細
GanttView の タイムスケールの単位を「時間」に、Formatを「uu」に設定すると、隣り合うラベルの時刻が重複する場合があります。

GanttView.TimeScale コントロールの BottomTier クラスに対して以下の設定を行います。
・Units プロパティ= C1.Win.GanttView.TimescaleUnits.Hours
・Format プロパティ= "uu"
・Instantプロパティ= "Start" (デフォルト値)※
※タイムスケールダイアログでは「時点」を「開始」に設定します。
この状態でアプリケーションを実行すると、タイムスケールのラベルが「00/00/02/03/03・・・」というように時刻が重複して表示されます。
【注記】
・ラベル用の内部的な時刻は「0:00/1:00...」のはずですが、「0:00/0:59...」となっています。Format を "uu" にすると分や秒が切り捨てられて、このような結果になります。
・Instantプロパティを「Middle」または「End」(「時点」を「中央」または「終了」)に設定すると、本現象は発生しません。
(2025.09.19 追記)
Formatを「uu:ii」にすると、「00:00/00:59/02:00/03:00/03:59」のように、時刻が同じで分の部分が異なる表示になります。
GanttView.TimeScale コントロールの BottomTier クラスに対して以下の設定を行います。
・Units プロパティ= C1.Win.GanttView.TimescaleUnits.Hours
・Format プロパティ= "uu"
・Instantプロパティ= "Start" (デフォルト値)※
※タイムスケールダイアログでは「時点」を「開始」に設定します。
この状態でアプリケーションを実行すると、タイムスケールのラベルが「00/00/02/03/03・・・」というように時刻が重複して表示されます。
【注記】
・ラベル用の内部的な時刻は「0:00/1:00...」のはずですが、「0:00/0:59...」となっています。Format を "uu" にすると分や秒が切り捨てられて、このような結果になります。
・Instantプロパティを「Middle」または「End」(「時点」を「中央」または「終了」)に設定すると、本現象は発生しません。
(2025.09.19 追記)
Formatを「uu:ii」にすると、「00:00/00:59/02:00/03:00/03:59」のように、時刻が同じで分の部分が異なる表示になります。
回避方法
【注記】に記載したように、タイムスケールダイアログの「時点」を「中央」または「終了」に設定します。
コードでは、Instantプロパティを「Middle」または「End」に設定します。
(2025.09.19 追記)
Formatを「uu:ii」にしてhh:mm 形式で表示する場合の回避方法は次の通りです。
・「時点」=「開始」の場合:「時点」を「中央」か「終了」にし、Formatを「uu:00」に変更します。
・「時点」=「中央」の場合:Formatを「uu:30」に変更します。
・「時点」=「開始」の場合:Formatを「uu:59」に変更します。
コードでは、Instantプロパティを「Middle」または「End」に設定します。
(2025.09.19 追記)
Formatを「uu:ii」にしてhh:mm 形式で表示する場合の回避方法は次の通りです。
・「時点」=「開始」の場合:「時点」を「中央」か「終了」にし、Formatを「uu:00」に変更します。
・「時点」=「中央」の場合:Formatを「uu:30」に変更します。
・「時点」=「開始」の場合:Formatを「uu:59」に変更します。