除以两个TimeSpans得到一个系数

本文关键字:一个 两个 TimeSpans | 更新日期: 2023-09-27 18:16:14

给出一个例子:

我们需要计算音频专辑播放进度条的子部分的大小。专辑中的每个曲目的长度表示为TimeSpan值。专辑的总长度也是一个时间跨度。

我需要计算每首曲目相对于整个专辑的长度权重,这样我就可以在进度条上分别画出它们。

我知道不可能将两个TimeSpan变量分开,所以我尝试将。ticks分开。

long coeff = curTrackLength.Ticks / _totalLength.Ticks;

这样的除法总是得到0。我需要一个更精确的值。我怎样才能得到更精确的计算?

环境是一个Silverlight for Windows Phone Mango.

除以两个TimeSpans得到一个系数

至少需要将一侧强制转换为doubledecimal,以避免整数除法

long coeff = (long) ((double) curTrackLength.Ticks / (double) _totalLength.Ticks);