示例#1
0
        public CandleChartControl()
        {
            InitializeComponent();

            if (DesignMode)
            {
                return;
            }

            chart.Owner          = this;
            chart.StockPane.Name = Localizer.GetString("TitleCourse");

            // серии (граф. объекты)
            InitializeSeries();

            // визуальные инструменты
            zoomTool = new ZoomTool
            {
                Name      = "Zoom",
                Enabled   = true,
                ForeColor = Color.Blue,
                BackColor = Color.FromArgb(50, Color.Green)
            };
            chart.InteractivityTools.Add(zoomTool);
            var scrollTool = new ScrollTool {
                Name = "Scroll", Enabled = true
            };

            chart.InteractivityTools.Add(scrollTool);
            var infoTool = new InfoTool("info")
            {
                Enabled = true
            };

            chart.InteractivityTools.Add(infoTool);
            crossTool = new CrossTool("cross")
            {
                Enabled = true
            };
            chart.InteractivityTools.Add(crossTool);

            // привязать обработчики
            chart.MouseUp += ChartMouseUp;

            // визуальные
            chart.StockSeries.BarOffset     = 5;
            chart.StockSeries.ShowLastQuote = true;

            // иконки состояния
            chart.StockPane.AddPaneStrip("Candlechart.images.pane_strip.png", 1, 0);
            chart.OnScaleChanged += Window_OnScaleChanged;

            // Для прорисовки корабликов
            this.OnPositionsReceived += chart.DrawOrderPriceMarks;

            // меню
            SetupMenuImages();
        }
示例#2
0
        public void Initialize(MapEditorViewVM vm)
        {
            _vm = vm ?? throw new ArgumentNullException(nameof(MapEditorViewVM));

            _vm.RefreshAction = this.Invalidate;

            _scrollTool = new ScrollTool(_vm, this);
            _scrollTool.Activate();
            _zoomTool = new ZoomTool(_vm, this);
            _zoomTool.Activate();

            MouseHover += (s, a) => _vm.Cursor.Hover();
            MouseLeave += (s, a) => vm.Cursor.Leave();
            MouseMove  += (s, a) => vm.Cursor.Move(ToCursorButtons(a.Button), a.Location);
            MouseUp    += (s, a) => vm.Cursor.Up(ToCursorButtons(a.Button), a.Location);
            MouseDown  += (s, a) => vm.Cursor.Down(ToCursorButtons(a.Button), a.Location);
            Resize     += (s, a) => _vm.Resize(this.ClientSize.Width, this.ClientSize.Height);
        }