Метка времени C # Datagridview (понедельник-пятница) & (8:00 - 15:00) - PullRequest
0 голосов
/ 18 ноября 2018

Итак, у меня есть сетка данных с меткой времени для каждой строки, а метка времени - каждый день и каждый час недели.У меня возникли проблемы с перестановкой таблицы данных, чтобы иметь только метки времени с понедельника по пятницу и с 8:00 до 15:00.Кто-нибудь знает, как переставить столбец, чтобы получить только время с понедельника по пятницу (с 8 утра до 3 вечера)? Датагрид

try
            {
                var endTimeInclusive = DateTime.UtcNow;
                var startTimeInclusive = 
endTimeInclusive.Subtract(TimeSpan.FromHours(hours));

                var bars = client.ListMinuteAggregatesAsync(symbol, 
startTimeInclusive, endTimeInclusive).Result;


                this.Invoke(new Action(delegate ()
                {
                    foreach (var bar in bars.Items)
                    {
                        alpaGrid.Rows.Add(bar.Time.ToString(), symbol, 
bar.Open, bar.High, bar.Low, bar.Close, bar.Volume);


                    }
                }));
            }

1 Ответ

0 голосов
/ 18 ноября 2018
for(int i = 0; i < alpaGrid.Rows; i++)
{
    DataGridViewRow row = alpaGrid.Rows[i];
    DateTime date = Convert.ToDateTime(row["Timestamp"].Value); //"Timestamp" is your column name

    if(date < .....)
        row.Visible = false;
    else
        row.Visible = true;
}

Таким образом, вы просто спрячете свою строку от dataGridView, но не удалите ее. Позже, если вы хотите просто выполнить тот же цикл, но без проверки row.Visible = true;, и вы установите все строки видимыми.

Также другой подход заключается в использовании фильтрации строк, но не уверен, как она будет работать, поскольку я использую ее только при заполнении dataGridView с помощью dgv.DataSource = ...

Если вы хотите попробовать это, проверьте этот вопрос

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...