title: How to Combine Candlestick Charts and Volume Bar Charts in C#
body: <p>How to Combine Candlestick Charts and Volume Bar Charts</p>
  
  <p>I am currently developing a candlestick chart with mschart in visual C #.</p>
  
  <p>The candle chart was completed with your help.</p>
  
  <p><a href="https://i.stack.imgur.com/S0vwN.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/S0vwN.png" alt="enter image description here"></a></p>
  
  <p>I want to create a bar chart corresponding to the candle chart using the trading volume as in the image above.</p>
  
  <p>It is a source developed so far.</p>
  
  <pre><code>DataTable table_ChartData = new DataTable();
  table_ChartData.Columns.Add("Id");
  table_ChartData.Columns.Add("Open");
  table_ChartData.Columns.Add("Close");
  table_ChartData.Columns.Add("High");
  table_ChartData.Columns.Add("Low");
  table_ChartData.Columns.Add("Day");
  dataGridView1.DataSource = table_ChartData;  
  
  chart1.ChartAreas["ChartArea1"].AxisX.MajorGrid.LineWidth = 1;
  chart1.ChartAreas["ChartArea1"].AxisY.MajorGrid.LineWidth = 1;
  chart1.ChartAreas["ChartArea1"].AxisY.Maximum = max;
  chart1.ChartAreas["ChartArea1"].AxisY.Minimum = min;
  
  chart1.Series["Daily"].XValueMember = "Day";
  chart1.Series["Daily"].YValueMembers = "High,Low,Open,Close";
  chart1.Series["Daily"].XValueType = System.Windows.Forms.DataVisualization.Charting.ChartValueType.Date;
  
  chart1.Series["Daily"].CustomProperties = "PriceDownColor=Blue,PriceUpColor=Red";
  chart1.Series["Daily"]["OpenCloseStyle"] = "Triangle";
  chart1.Series["Daily"]["ShowOpenClose"] = "Both";
  
  chart1.DataSource = table_ChartData;
  chart1.DataBind();
  
  private void chart1_MouseMove(object sender, MouseEventArgs e)
  {
      Point mousePoint = new Point(e.X, e.Y);
      chart1.ChartAreas[0].CursorX.SetCursorPixelPosition(mousePoint, true);
      chart1.ChartAreas[0].CursorY.SetCursorPixelPosition(mousePoint, rue);          
      var pos = e.Location;
      if (prevPosition.HasValue &amp;&amp; pos == prevPosition.Value)
          return;
      tooltip.RemoveAll();
      prevPosition = pos;
      var results = chart1.HitTest(pos.X, pos.Y, false, ChartElementType.DataPoint); // set ChartElementType.PlottingArea for full area, not only DataPoints
  
      foreach (var result in results)
      {
              if (result.ChartElementType == ChartElementType.DataPoint) // set ChartElementType.PlottingArea for full area, not only DataPoints
              {
                  var prop = result.Object as DataPoint;
                  if(prop != null)
                  {
                      tooltip.Show("Date : " + prop.AxisLabel + "\r\nHigh : " + prop.YValues[0] + "\r\nLow : " + prop.YValues[1] + "\r\nOpen : " + prop.YValues[2] + "\r\nClose : " + prop.YValues[3], chart1, e.X, e.Y - 15);                       
                  }
              }
      }
  }
  </code></pre>
  
  <p>I would like to introduce some helpful examples.</p>
  
  <p>I need help. Thank you.</p>