Страница 1 из 1

Как изменить высоту компонента из кода C#

Добавлено: 16 янв 2012, 12:21
MrStork
Здравствуйте, не могу решить проблему. На форму поместил компонент StiVerticalLinePrimitive. Из кода C# пытаюсь изменить высоту след. образом:

(report.Pages[0].GetComponents()["VerticalLinePrimitive1"] as StiVerticalLinePrimitive).Height = 10; Не помогает
Хотя (report.Pages[0].GetComponents()["VerticalLinePrimitive1"] as StiVerticalLinePrimitive).Color = Color.Green; работает.

Решил создать объект линии динамически, предварительно удалив линию с формы:

var report = new Stimulsoft.Report.StiReport();
......
var line = new StiVerticalLinePrimitive();
line = new Stimulsoft.Report.Components.StiVerticalLinePrimitive();
line.ClientRectangle = new Stimulsoft.Base.Drawing.RectangleD(7.2, 2, 0.0254, 16.4);
line.Color = System.Drawing.Color.Black;
line.Guid = "bdb6a51c62b04a58805953a05e82d637";
line.Name = "VerticalLinePrimitive1";
line.EndCap = new Stimulsoft.Base.Drawing.StiCap(10, Stimulsoft.Base.Drawing.StiCapStyle.None, 10, true, System.Drawing.Color.Black);
line.Interaction = null;
line.StartCap = new Stimulsoft.Base.Drawing.StiCap(10, Stimulsoft.Base.Drawing.StiCapStyle.None, 10, true, System.Drawing.Color.Black);
line.Page = report.Pages[0];
line.Parent = report.Pages[0];
report.Pages[0].Components.Add(line);

Отчёт загружается, но линии вообще нет. Подскажите как быть

Как изменить высоту компонента из кода C#

Добавлено: 17 янв 2012, 07:28
HighAley
Здравствуйте.

С линиями всё немного сложнее. Если вы посмотрите вкладку Код в дизайнере, то увидите, что линия рисуется двумя точками StartPointPrimitive1 и EndPointPrimitive1.
Попробуйте использовать следующий код:

Код: Выделить всё

(rep.Pages[0].GetComponents()["EndPointPrimitive1"] as StiEndPointPrimitive).ClientRectangle = new Stimulsoft.Base.Drawing.RectangleD(7.2, 12, 0, 0);
Спасибо.

Как изменить высоту компонента из кода C#

Добавлено: 18 янв 2012, 12:32
MrStork
Спасибо большое. Заработало)))

Как изменить высоту компонента из кода C#

Добавлено: 18 янв 2012, 13:13
Andrew
Здравствуйте.

Всегда готовы придти на помощь в трудную минуту.

Спасибо.