Ответ 1
К сожалению, похоже, что свойство margin не существует так, как мне хотелось бы. Но сегодня я наткнулся на эту статью: http://support2.dundas.com/Default.aspx?article=869
Мое обходное решение состояло в том, чтобы установить MajorTickMark в размер тиков, которые я хотел иметь + маржу. Затем я устанавливаю цвет прозрачным.
Chart1.ChartAreas(0).AxisY.MajorTickMark.Size = size
Chart1.ChartAreas(0).AxisY.MajorTickMark.LineColor = Color.FromArgb(0, 0, 0, 0)
После этого я просто добавил HorizontalLineAnnotation для каждой строки в размере и месте, которое я хотел.
Dim minValue As Double = Chart1.ChartAreas("ChartArea").AxisY.Minimum
Dim maxValue As Double = Chart1.ChartAreas("ChartArea").AxisY.Maximum
Dim iteration As Integer = CInt((Math.Abs(minValue) + Math.Abs(maxValue )) / interval)
For i As Integer = 0 To iteration
Dim line As New HorizontalLineAnnotation()
With line
.AxisX = Chart1.ChartAreas("ChartArea").AxisX
.AxisY = Chart1.ChartAreas("ChartArea").AxisY
.AnchorX = 0
.Y = i * interval - Math.Abs(minValue)
.AnchorOffsetX = offset
.Height = 0
.LineWidth = 1
.Width = (5 / Chart1.Width.Value * 1240)
.LineColor = Color.FromArgb(128, 128, 128)
End With
Chart1.Annotations.Add(line)
Next
С этим обходным решением я получил результат, который хотел.