示例#1
0
        private void RebuildSplitters()
        {
            plotter.Children.RemoveAll <PaletteThumb>();
            hostPanel.Children.Clear();

            if (Palette == null)
            {
                return;
            }

            var palette = Palette;
            int count   = palette.Steps.Count;

            int counter = 0;

            // adding thumbs
            foreach (var colorStep in palette.Steps.Take(count - 1))
            {
                PaletteThumb thumb = new PaletteThumb {
                    Position = new Point(colorStep.Offset, 0.5)
                };
                SetIndex(thumb, counter);
                thumb.PositionChanged += new EventHandler <Charts.PositionChangedEventArgs>(thumb_PositionChanged);
                counter++;

                thumbs.Add(thumb);
                plotter.Children.Add(thumb);
            }

            // adding space between thumbs
            double prevOffset = 0;

            foreach (var colorStep in palette.Steps)
            {
                Rectangle rect = new Rectangle {
                    Fill = Brushes.Transparent
                };
                Rect bounds = new Rect(prevOffset, 0, colorStep.Offset, 1);
                ViewportPanel.SetViewportBounds(rect, bounds);

                hostPanel.Children.Add(rect);

                prevOffset = colorStep.Offset;
            }
        }
		private void RebuildSplitters()
		{
			plotter.Children.RemoveAll<PaletteThumb>();
			hostPanel.Children.Clear();

			if (Palette == null) return;

			var palette = Palette;
			int count = palette.Steps.Count;

			int counter = 0;

			// adding thumbs
			foreach (var colorStep in palette.Steps.Take(count - 1))
			{
				PaletteThumb thumb = new PaletteThumb { Position = new Point(colorStep.Offset, 0.5) };
				SetIndex(thumb, counter);
				thumb.PositionChanged += new EventHandler<Charts.PositionChangedEventArgs>(thumb_PositionChanged);
				counter++;

				thumbs.Add(thumb);
				plotter.Children.Add(thumb);
			}

			// adding space between thumbs
			double prevOffset = 0;
			foreach (var colorStep in palette.Steps)
			{
				Rectangle rect = new Rectangle { Fill = Brushes.Transparent };
				Rect bounds = new Rect(prevOffset, 0, colorStep.Offset, 1);
				ViewportPanel.SetViewportBounds(rect, bounds);

				hostPanel.Children.Add(rect);

				prevOffset = colorStep.Offset;
			}
		}