MSChart Размер аннотации - PullRequest
4 голосов
/ 24 апреля 2011

У меня есть MSChart с аннотациями, область построения диаграммы настолько велика, что люди, использующие старую школу 800x600, могут видеть диаграмму.

Проблема в том, что когда я смотрю свой график в этом низком разрешении, примечания внутри него сжимаются вместе с графиком и начинают обрезать последние пару букв.

Например, аннотация с «Hello world» в нормальном разрешении становится «Hello W» при 800x600.

Кто-нибудь знает, как я могу установить свойства annotaiton, чтобы они не сжимались?

1 Ответ

1 голос
/ 19 мая 2011

У меня была такая же проблема, и я не смог найти способ сделать аннотацию фиксированного размера.Я выяснил, что размеры аннотаций задаются в процентах от диаграммы (т.е. причина, по которой они меняют размеры, заключается в том, что Width = 25 на самом деле означает 25% ширины диаграммы), поэтому я написал небольшой взлом, чтобы изменить размер аннотации всякий раз, когда диаграммаизменяет размер:

var annotation = new RectangleAnnotation() { ... }

chart.Annotations.Add(annotation);

chart.Resize += (sndr, ev) => {
    // Shoot for 60 pixels tall and 130 wide
    // Annotation dimensions are set as a percentage of the chart area
    annotation.Width =  (130d / chart.Width) * 100;
    annotation.Height = (60d / chart.Height) * 100;
};

Это уродливо, но у меня работает.

...