Размер аннотации MSChart

#.net #visual-studio #mschart

#.net #visual-studio #mschart

Вопрос:

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

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

Например, аннотация с надписью «Hello world» в обычном разрешении становится «Hello W» в формате 800×600.

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

Ответ №1:

У меня была та же проблема, и я не смог найти способ сделать размер аннотации фиксированным. Я выяснил, что размеры аннотации задаются в процентах от диаграммы (т. Е. Причина изменения ее размера заключается в том, что 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;
};
  

Это немного некрасиво, но у меня это работает.