C# 仅显示日期的devexpress xtracharts

C# 仅显示日期的devexpress xtracharts,c#,datetime,charts,devexpress,C#,Datetime,Charts,Devexpress,我已经创建了一个devexpress图表(v13.2),它在x轴上有datetime,在Y轴上有值 当前在x轴上,它显示如下日期: 但默认情况下,我还需要显示日期和时间,如下所示: 即使x轴编码为从数据库获取日期时间,但它仍然只显示日期而不是时间。 为什么?请尝试该属性并设置适当的值: 请尝试该属性并设置适当的值: 这是一个分两步的过程,在秤上显示日期和时间: 将属性设置为 然后选择Axis.DateTimeScaleOptions属性和自定义设置 (XYDiagram)chartContr

我已经创建了一个devexpress图表(v13.2),它在x轴上有datetime,在Y轴上有值

当前在x轴上,它显示如下日期:

但默认情况下,我还需要显示日期和时间,如下所示:

即使x轴编码为从数据库获取日期时间,但它仍然只显示日期而不是时间。 为什么?

请尝试该属性并设置适当的值:

请尝试该属性并设置适当的值:


这是一个分两步的过程,在秤上显示日期和时间:

  • 将属性设置为
  • 然后选择Axis.DateTimeScaleOptions属性和自定义设置

    (XYDiagram)chartControl1.Diagram).AxisX.DateTimeOptions.Format = DateTimeFormat.General;
    (XYDiagram)chartControl1.Diagram).AxisX.DateTimeScaleOptions.GridAlignment = 
                                    DevExpress.XtraCharts.DateTimeGridAlignment.Minute;
    (XYDiagram)chartControl1.Diagram).AxisX.DateTimeScaleOptions.MeasureUnit = 
                                      DevExpress.XtraCharts.DateTimeMeasureUnit.Minute;
    
  • 检查以下代码和图表配置,使我能够获得您想要实现的预期结果:

    表格C:

    public Form1()
    {
        InitializeComponent();
        // This line of code is generated by Data Source Configuration Wizard
        chartDataTableAdapter1.Fill(dbDataSet1.ChartData);
    }
    
    Designer.cs:

    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InitializeComponent()
    {
        this.components = new System.ComponentModel.Container();
        DevExpress.XtraCharts.XYDiagram xyDiagram1 = new DevExpress.XtraCharts.XYDiagram();
        DevExpress.XtraCharts.PointSeriesLabel pointSeriesLabel1 = new DevExpress.XtraCharts.PointSeriesLabel();
        DevExpress.XtraCharts.PointOptions pointOptions1 = new DevExpress.XtraCharts.PointOptions();
        DevExpress.XtraCharts.LineSeriesView lineSeriesView1 = new DevExpress.XtraCharts.LineSeriesView();
        this.chartControl1 = new DevExpress.XtraCharts.ChartControl();
        this.chartDataTableAdapter1 = new ChartTest.DBDataSetTableAdapters.ChartDataTableAdapter();
        this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components);
        this.dbDataSet1 = new ChartTest.DBDataSet();
        ((System.ComponentModel.ISupportInitialize)(this.chartControl1)).BeginInit();
        ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).BeginInit();
        ((System.ComponentModel.ISupportInitialize)(pointSeriesLabel1)).BeginInit();
        ((System.ComponentModel.ISupportInitialize)(lineSeriesView1)).BeginInit();
        ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
        ((System.ComponentModel.ISupportInitialize)(this.dbDataSet1)).BeginInit();
        this.SuspendLayout();
        // 
        // chartControl1
        // 
        this.chartControl1.DataAdapter = this.chartDataTableAdapter1;
        this.chartControl1.DataSource = this.bindingSource1;
        xyDiagram1.AxisX.DateTimeScaleOptions.GridAlignment = DevExpress.XtraCharts.DateTimeGridAlignment.Minute;
        xyDiagram1.AxisX.DateTimeScaleOptions.MeasureUnit = DevExpress.XtraCharts.DateTimeMeasureUnit.Minute;
        xyDiagram1.AxisX.Label.DateTimeOptions.Format = DevExpress.XtraCharts.DateTimeFormat.General;
        xyDiagram1.AxisX.Range.AlwaysShowZeroLevel = true;
        xyDiagram1.AxisX.Range.ScrollingRange.SideMarginsEnabled = true;
        xyDiagram1.AxisX.Range.SideMarginsEnabled = true;
        xyDiagram1.AxisX.VisibleInPanesSerializable = "-1";
        xyDiagram1.AxisY.Range.AlwaysShowZeroLevel = true;
        xyDiagram1.AxisY.Range.ScrollingRange.SideMarginsEnabled = true;
        xyDiagram1.AxisY.Range.SideMarginsEnabled = true;
        xyDiagram1.AxisY.VisibleInPanesSerializable = "-1";
        this.chartControl1.Diagram = xyDiagram1;
        this.chartControl1.Dock = System.Windows.Forms.DockStyle.Fill;
        this.chartControl1.Legend.Visible = false;
        this.chartControl1.Location = new System.Drawing.Point(0, 0);
        this.chartControl1.Name = "chartControl1";
        this.chartControl1.SeriesDataMember = "VariableName";
        this.chartControl1.SeriesSerializable = new DevExpress.XtraCharts.Series[0];
        this.chartControl1.SeriesTemplate.ArgumentDataMember = "LastTime";
        this.chartControl1.SeriesTemplate.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.DateTime;
        pointSeriesLabel1.LineVisible = true;
        pointOptions1.ArgumentDateTimeOptions.Format = DevExpress.XtraCharts.DateTimeFormat.General;
        pointSeriesLabel1.PointOptions = pointOptions1;
        this.chartControl1.SeriesTemplate.Label = pointSeriesLabel1;
        this.chartControl1.SeriesTemplate.ValueDataMembersSerializable = "LastValue";
        this.chartControl1.SeriesTemplate.View = lineSeriesView1;
        this.chartControl1.Size = new System.Drawing.Size(284, 262);
        this.chartControl1.TabIndex = 0;
        // 
        // chartDataTableAdapter1
        // 
        this.chartDataTableAdapter1.ClearBeforeFill = true;
        // 
        // bindingSource1
        // 
        this.bindingSource1.DataMember = "ChartData";
        this.bindingSource1.DataSource = this.dbDataSet1;
        this.bindingSource1.Sort = "";
        // 
        // dbDataSet1
        // 
        this.dbDataSet1.DataSetName = "DBDataSet";
        this.dbDataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
        // 
        // Form1
        // 
        this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.ClientSize = new System.Drawing.Size(284, 262);
        this.Controls.Add(this.chartControl1);
        this.Name = "Form1";
        this.Text = "Form1";
        ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).EndInit();
        ((System.ComponentModel.ISupportInitialize)(pointSeriesLabel1)).EndInit();
        ((System.ComponentModel.ISupportInitialize)(lineSeriesView1)).EndInit();
        ((System.ComponentModel.ISupportInitialize)(this.chartControl1)).EndInit();
        ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
        ((System.ComponentModel.ISupportInitialize)(this.dbDataSet1)).EndInit();
        this.ResumeLayout(false);
    
    }
    
    #endregion
    
    private DevExpress.XtraCharts.ChartControl chartControl1;
    private DBDataSetTableAdapters.ChartDataTableAdapter chartDataTableAdapter1;
    private System.Windows.Forms.BindingSource bindingSource1;
    private DBDataSet dbDataSet1;
    
    //
    ///设计器支持所需的方法-不修改
    ///此方法的内容与代码编辑器一起使用。
    /// 
    私有void InitializeComponent()
    {
    this.components=new System.ComponentModel.Container();
    DevExpress.XtraCharts.XYDiagram xyDiagram1=新的DevExpress.XtraCharts.XYDiagram();
    DevExpress.XtraCharts.PointSeriesLabel pointSeriesLabel1=新建DevExpress.XtraCharts.PointSeriesLabel();
    DevExpress.XtraCharts.PointOptions PointOptions 1=新建DevExpress.XtraCharts.PointOptions();
    DevExpress.XtraCharts.LineSeriesView lineSeriesView1=新建DevExpress.XtraCharts.LineSeriesView();
    this.chartControl1=new DevExpress.XtraCharts.ChartControl();
    this.chartDataTableAdapter1=新的ChartTest.DBDataSetTableAdapters.ChartDataTableAdapter();
    this.bindingSource1=new System.Windows.Forms.BindingSource(this.components);
    this.dbDataSet1=new ChartTest.DBDataSet();
    ((System.ComponentModel.ISupportInitialize)(this.chartControl1)).BeginInit();
    ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).BeginInit();
    ((System.ComponentModel.ISupportInitialize)(pointSeriesLabel1)).BeginInit();
    ((System.ComponentModel.ISupportInitialize)(lineSeriesView1)).BeginInit();
    ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit();
    ((System.ComponentModel.ISupportInitialize)(this.dbDataSet1)).BeginInit();
    这个.SuspendLayout();
    // 
    //图表控制1
    // 
    this.chartControl1.DataAdapter=this.chartDataTableAdapter1;
    this.chartControl1.DataSource=this.bindingSource1;
    xyDiagram1.AxisX.DateTimeScaleOptions.GridAlignment=DevExpress.XtraCharts.DateTimeGridAlignment.Minute;
    xyDiagram1.axix.DateTimeScaleOptions.MeasureUnit=DevExpress.XtraCharts.DateTimeMeasureUnit.Minute;
    xyDiagram1.axix.Label.DateTimeOptions.Format=DevExpress.XtraCharts.DateTimeFormat.General;
    xyDiagram1.AxisX.Range.AlwaysShowZeroLevel=true;
    xyDiagram1.AxisX.Range.ScrollingRange.SideMarginsEnabled=true;
    xyDiagram1.AxisX.Range.SideMarginsEnabled=true;
    xyDiagram1.axix.VisibleInPanesSerializable=“-1”;
    xyDiagram1.AxisY.Range.AlwaysShowZeroLevel=true;
    xyDiagram1.AxisY.Range.ScrollingRange.SideMarginsEnabled=true;
    xyDiagram1.AxisY.Range.SideMarginsEnabled=true;
    xyDiagram1.AxisY.VisibleInPanesSerializable=“-1”;
    this.chartControl1.Diagram=xyDiagram1;
    this.chartControl1.Dock=System.Windows.Forms.DockStyle.Fill;
    this.chartControl1.Legend.Visible=false;
    this.chartControl1.Location=新系统.Drawing.Point(0,0);
    this.chartControl1.Name=“chartControl1”;
    this.chartControl1.SeriesDataMember=“VariableName”;
    this.chartControl1.SeriesSerializable=新的DevExpress.XtraCharts.Series[0];
    this.chartControl1.SeriesTemplate.ArgumentDataMember=“LastTime”;
    this.chartControl1.SeriesTemplate.ArgumentScaleType=DevExpress.XtraCharts.ScaleType.DateTime;
    pointSeriesLabel1.LineVisible=true;
    PointOptions 1.ArgumentDateTimeOptions.Format=DevExpress.XtraCharts.DateTimeFormat.General;
    pointSeriesLabel1.PointOptions=PointOptions 1;
    this.chartControl1.SeriesTemplate.Label=pointSeriesLabel1;
    this.chartControl1.SeriesTemplate.ValueDataMembersSerializable=“LastValue”;
    this.chartControl1.SeriesTemplate.View=lineSeriesView1;
    this.chartControl1.Size=新系统.Drawing.Size(284262);
    this.chartControl1.TabIndex=0;
    // 
    //chartDataTableAdapter1
    // 
    this.chartDataTableAdapter1.ClearBeforeFill=true;
    // 
    //bindingSource1
    // 
    this.bindingSource1.DataMember=“ChartData”;
    this.bindingSource1.DataSource=this.dbDataSet1;
    this.bindingSource1.Sort=“”;
    // 
    //dbDataSet1
    // 
    this.dbDataSet1.DataSetName=“DBDataSet”;
    this.dbDataSet1.SchemaSerializationMode=System.Data.schemaserizationmode.IncludeSchema;
    // 
    //表格1
    // 
    此.AutoScaleDimensions=新系统.Drawing.SizeF(6F,13F);
    this.AutoScaleMode=System.Windows.Forms.AutoScaleMode.Font;
    this.ClientSize=新系统.Drawing.Size(284262);
    this.Controls.Add(this.chartControl1);
    this.Name=“Form1”;
    this.Text=“Form1”;
    ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).EndInit();
    ((System.ComponentModel.ISupportInitialize)(pointSeriesLabel1)).EndInit();
    ((System.ComponentModel.ISupportInitialize)(lineSeriesView1)).EndInit();
    ((System.ComponentModel.ISupportInitialize)(this.chartControl1)).EndInit();
    ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit();
    ((System.ComponentModel.ISupportInitialize)(this.dbDataSet1)).EndInit();
    此选项为.resume布局(false);
    }
    #端区
    private DevExpress.XtraCharts.ChartControl chartControl1;
    私有DBDataSetTableAdapters.ChartDataTableAdapter chartDataTableAdapter1;
    private System.Windows.Forms.BindingSource bindingSource1;
    私有数据集dbDataSet1;
    
    图表数据:

    结果:

    这是一个两步过程,在秤上显示日期和时间:

  • 将属性设置为
  • 然后选择Axis.DateTimeScaleOptions属性和自定义设置

    (XYDiagram)chartControl1.Diagram).AxisX.DateTimeOptions.Format = DateTimeFormat.General;
    (XYDiagram)chartControl1.Diagram).AxisX.DateTimeScaleOptions.GridAlignment = 
                                    DevExpress.XtraCharts.DateTimeGridAlignment.Minute;
    (XYDiagram)chartControl1.Diagram).AxisX.DateTimeScaleOptions.MeasureUnit = 
                                      DevExpress.XtraCharts.DateTimeMeasureUnit.Minute;