-3

datagridview に週番号を列として表示してみてください。2 つの日付範囲を選択し、ボタンをクリックして、データグリッドに週番号を列として表示します。

IDと週番号でタイムラインチャートを作成しようとしています

これは私がこれまでに行ったことであり、日付から選択して週を取得したいと考えています。

var daysCount = DateTime.DaysInMonth(DateTime.Now.Year, 1);

for (int i = 1; i <= daysCount; i++)
{
    grid1.Columns.Add(new DataGridViewColumn() 
    { 
        HeaderText = i.ToString(), 
        CellTemplate = new DataGridViewTextBoxCell() 
    });
}
4

1 に答える 1

0

チェック: https://stackoverflow.com/a/3738781/1043068

var start = new DateTime(2013, 9, 23);
var end = new DateTime(2013, 10, 5);

double daysBefore = (start - new DateTime(start.Year, 1, 1)).TotalDays;

int
    weekNumber = (int)Math.Ceiling(daysBefore / 7), // Start Day week number
    currentYear = start.Year; // used to check for a new year

for (var dt = start; dt <= end; dt = dt.AddDays(7))
{
    if (dt.Year > currentYear)
    {
        currentYear = dt.Year;
        weekNumber = 1;
    }

    dataGridView1.Columns.Add(new DataGridViewColumn
    {
        HeaderText = (weekNumber++).ToString(),
        CellTemplate = new DataGridViewTextBoxCell()
    });
}
于 2013-10-03T13:35:23.813 に答える