Диаграмма C # Datetime to Date - PullRequest
0 голосов
/ 25 января 2019

У меня есть диаграмма, которая связана с "BindingSource".Я использую столбец Date из источника привязки в качестве оси X следующим образом:

chart1.Series["chart"].XValueMember = "Date");

Моя проблема, с другой стороны, заключается в том, что для учета также требуются часы / минуты / секунды.(Таким образом, вместо того, чтобы группировать весь день по одному бару, он делает несколько баров за один день)

Есть ли способ убедиться, что часы / минуты / секунды игнорируются на графике и просто группируются для каждогодень?Без необходимости менять источник данных (Просмотр секунд и прочего важен для таблицы данных, которая использует тот же источник данных) (И при этом возможно ли это делать месяцами / годами?)

Полный код диаграммы:

BindingSource Datasource= new BindingSource();
Datasource.DataSource = Selected_DataTables;
        chart1.Series.Clear();
        chart1.Series.Add("chart");
        chart1.Series["chart"].XValueMember = "Date";
        chart1.Series["chart"].YValueMembers = "Sales";
        chart1.DataSource = Datasource;
        chart1.DataBind();

(«Selected_DataTables» представляет собой набор необязательных результатов запроса к базе данных)

1 Ответ

0 голосов
/ 25 января 2019

Мое решение состояло в том, чтобы сделать копию исходного Datatable и сделать эту копию моим источником данных для Графика. Копия не влияет на оригинал, поэтому я смог использовать приведенный ниже код, чтобы преобразовать его в нужный мне формат. Надеюсь, это кому-нибудь поможет.

    DataTable chart_DateTable = new DataTable();
    chart_DateTable = Selected_DataTables.Copy();


    foreach (DataRow row in chart_DateTable.Rows)
    {

        DateTime test2 = DateTime.Parse(row["Datum"].ToString());
        row["Datum"] = test2.Date;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...