Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Графики(chart) и Много страничная печать 
:(
    Опции темы
volkoffkos
Дата 2.10.2010, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 2.10.2010

Репутация: нет
Всего: нет



есть проект в котором на элементах Canvas генерируются элементы chart, далее это идет на многостраничную печать

проблема в том, что на первой странице графики имеют ЛИНИЮ, а на 2й и последующих страницах этих линий нет, только подложка...
что интересное на 2й и следующей есть маштабная разметка, т.е. только не рисуется сама линия...

прикрепляю:
то что получает при печати
   1 стрраница
   2 и последуюшщие

код для печати

Код

...
Canvas[] pages = new Canvas[all_page];

                for (int i = 0; i < all_page; i++)
                {
                    pages[i] = page_new3((4 * i), all_page, count_gr, date_time, value, i);
                    //LayoutRoot.Children.Add(pages[i]);
                }

                PrintDocument multidoc = new PrintDocument();
                int index = 0;
                multidoc.PrintPage += (s, arg) =>
                {
                    StackPanel host = new StackPanel();
                    while (index < pages.Count())
                    {

                        host.Children.Add(pages[index]);

                        host.Measure(new Size(arg.PrintableArea.Width, double.PositiveInfinity));

                        if (host.DesiredSize.Height > arg.PrintableArea.Height && host.Children.Count > 1)
                        {
                            host.Children.Remove(pages[index]);
                            arg.HasMorePages = true;
                            break;
                        }
                        index++;
                    }
                    arg.PageVisual = host;
                };
                multidoc.Print("Отчет №3");
...


и то как формируется график

Код

            Chart LS = new Chart()
            {
                Width = page_w+112,
                Height = 200,
                //BorderBrush = mySolidColorBrush,
                BorderThickness = new Thickness(0),
                Margin = new Thickness(padding_lr, line_y, padding_lr, 0),
                Padding = new Thickness(0)
            };

            

            LineSeries NewChart = new LineSeries();
            //NewChart.Style = (Style)();

            ObservableCollection<ChartPoint> OC = new ObservableCollection<ChartPoint>();

            for (int i = 0; i < date_time.Count(); i++)
            {
                //System.Windows.Browser.HtmlPage.Window.Alert("value_level = " + value_level);
                OC.Add(new ChartPoint { Value = value[value_level,i], DateTime = date_time[i] });
            }

            NewChart.ItemsSource = OC;

            Style style = new Style(typeof(Control));
            Setter st1 = new Setter(Control.OpacityProperty, Opacity);            
            style.Setters.Add(st1);


            NewChart.DataPointStyle = style;
            NewChart.DependentValuePath = "Value";
            NewChart.IndependentValuePath = "DateTime";
            LS.Series.Add(NewChart);


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.0741 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.