これは小さな論理的な質問です。私のデータグリッドには、日時の値が時系列に並んでいます。ユーザーが順不同の日時を入力した場合、プログラムは順不同の行を強調表示する必要があります。例: これは最初の注文です。
10/5/2010 11:59:59
10/6/2010 00:00:00
10/6/2010 11:59:59
ユーザーが入力したとします。
10/5/2010 11:59:59
***10/7/2010 00:00:00***
10/6/2010 11:59:59
10/7/2010 00:00:00
これ10/7/2010 00:00:00
は順不同で、プログラムは正しく動作します。
ユーザーが入力したとします。
10/5/2010 11:59:59
10/6/2010 00:00:00
***10/5/2010 11:59:59***
10/7/2010 00:00:00
これ10/5/2010 11:59:59
がアウトまたはオーダーの列です。しかし、プログラムは強調しています10/6/2010 00:00:00
。
上記を確認するための私のコードは次のとおりです。
for (int nRow = 1; nRow < pSeries.Count; ++nRow)
{
// validation1
if (!check_range(nRow, i, pSeries[nRow].tim))
{
row = nRow;
err = (short)err_typ.e_out_range;
goto err_exit;
}
}
public bool check_range(int np, int nCol, DateTime dt)
{
DataArray pdata = GetDataArray(nCol);
bool valid = (np <= 0 || pdata[np - 1].Datetim <= dt) &&
(np >= (pdata.Count - 1) || dt <= pdata[np + 1].Datetim );
return valid;
}
DataArray
日時値のユーザー定義配列です。pSeries
、pData
タイプDataArray
です。だから私が言うとき、pdata[np - 1].DateTime
それはdatetimeセルを指します。