Пример #1
0
 protected override void Context()
 {
     base.Context();
     _firstLegendItem  = new LegendItemDTO();
     _secondLegendItem = new LegendItemDTO();
     _thirdLegendItem  = new LegendItemDTO();
     _legendItems      = new[]
     {
         _firstLegendItem,
         _secondLegendItem,
         _thirdLegendItem
     };
 }
Пример #2
0
        public void AddLegendItem(LegendItemDTO legendItem)
        {
            var newItem = legendItemsLayoutControl.AddItem();

            newItem.Text = legendItem.Description;

            var tb = new TextEdit {
                BackColor = legendItem.Color, Enabled = false, MaximumSize = new Size(100, 0), Name = legendItem.Description
            };

            tb.Properties.AllowFocused = false;
            tb.Properties.ReadOnly     = true;
            tb.Properties.Appearance.Options.UseBackColor = true;
            tb.Properties.BorderStyle = BorderStyles.NoBorder;
            newItem.Control           = tb;
            newItem.TextLocation      = Locations.Right;

            var targetColumn = _presenter.TargetColumnFor(legendItem);
            var targetRow    = _presenter.TargetRowFor(legendItem);

            if (targetColumn >= layoutControlGroup.OptionsTableLayoutGroup.ColumnDefinitions.Count)
            {
                layoutControlGroup.OptionsTableLayoutGroup.AddColumn();
            }

            if (targetRow >= layoutControlGroup.OptionsTableLayoutGroup.RowDefinitions.Count)
            {
                layoutControlGroup.OptionsTableLayoutGroup.AddRow();
            }

            newItem.OptionsTableLayoutItem.ColumnIndex = targetColumn;
            newItem.OptionsTableLayoutItem.RowIndex    = targetRow;

            layoutControlGroup.AddItem(newItem);

            legendItemsLayoutControl.BestFit();
        }
 public int TargetRowFor(LegendItemDTO legendItem)
 {
     return(_legendItems.IndexOf(legendItem) % LegendHeight);
 }
 public int TargetColumnFor(LegendItemDTO legendItem)
 {
     return(_legendItems.IndexOf(legendItem) / LegendHeight);
 }