Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/82: Рейтинг темы: голосов - 82, средняя оценка - 4.54
2 / 2 / 0
Регистрация: 20.07.2011
Сообщений: 18
1

Data binding / привязка данных

24.08.2011, 15:23. Показов 14718. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день.
Я правильно понимаю, что если хочу привязать график сhart1 к некоторому массиву точек кодом
C#
1
chart1.Series["Series1"].Points.DataBindXY(xArr, yArr);
, то должен вызывать этот код каждый раз при обновлении xArr и yArr?
И, если так, то есть ли возможность привязать график к массивам один раз и навсегда?
Спасибо.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.08.2011, 15:23
Ответы с готовыми решениями:

data binding
Пишу программу Библиотека(без баз данных-очень простенькая), и возникла такая трабла : У меня есть...

как сделать data binding между datagrid и sql?
Я удалил строчку из datagrid ds.Tables.Rows.Delete(); myDG.DataSource =...

Привязка данных используя Binding
Здравствуйте! Подскажите пожалуйста как сделать привязку таким образом, чтобы данные выделенного...

Привязка данных через Binding в XAML
Дорогие форумчане. Помогите с таким вопросом. Работаю с WPF на Visual Basic. Каким образом можно...

7
2 / 2 / 0
Регистрация: 20.07.2011
Сообщений: 18
27.08.2011, 22:04  [ТС] 2
Не люблю это делать, но UP.
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
27.08.2011, 22:33 3
А что это за chart1 такой? Если это какой-то специальный класс для отображения графиков и в нем нет такого свойства как DataSource, то вызывайте тот код каждый раз.
Если же уж очень сильно в лом каждый раз руками писать этот код, то вам ничего не мешает переопределить класс этого chart1 и прилепить к нему поле DataSource, при этом создав по сути свой BindingSource с помощью событий и делегатов.
P.S. Забавно что это за график такой, что так часто меняется? Слайд-шоу графиком?
0
2 / 2 / 0
Регистрация: 20.07.2011
Сообщений: 18
27.08.2011, 22:45  [ТС] 4
chart1 - стандартный объект класса Chart из Windows Forms, в нём есть свойство DataSource, но это мне мало помогает. Возможно ссылка на нужную статью будет хорошей помощью. Пока не знаю, в какую сторону копать.

График меняется с течением времени, т.к. отображает текущие параметры, которые часто меняются (~ раз в секунду).
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
28.08.2011, 02:40 5
Цитата Сообщение от sol@ris Посмотреть сообщение
из Windows Forms
Что? А вы разделом на форуме не ошиблись? Надо было сразу говорить то, что это WPF.
Цитата Сообщение от sol@ris Посмотреть сообщение
стандартный объект
У меня его нет. Просмотрел все книги, что есть касательно WPF, так там тоже ничего о нем не нашел. Нет, я вовсе не говорю, что вы не правы, так как он в последней версии должен идти как стандартный компонент.

В поиске информации о этом компоненте пришел к выводу о том, что он не очень хорошо документирован, и в интернете мало информации о нем. Так что метод проб и ошибок никто не исключает.

Я как понял, вы говорите именно об этом Chart, так как я их в интернете нашел еще несколько штук.

P.S. ИМХО, бесполезный элемент, проще и быстрее самому такой график соорудить из тех компонентов, что есть в наличии.
0
2 / 2 / 0
Регистрация: 20.07.2011
Сообщений: 18
28.08.2011, 10:35  [ТС] 6
Blood-Angel, Вы не правы, к WPF это не имеет никакого отношения. Та ссылка, что Вы дали, есть ссылка на стороннюю библиотеку, реализующую графики для WPF.
Вы, мне кажется, путаете WPF и Windows Forms. Класс Chart, если интересно, находится во вкладке "Данные" панели инструментов Windows Forms.

Проблему эта дискуссия, конечно, не решает. Вы говорили про DataSource и BindingSource. Где можно подробнее почитать об этих объектах?
1
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
28.08.2011, 11:22 7
Спасибо, узнал что-то новое.

Создайте такой класс:
C#
1
2
3
4
5
6
7
8
9
10
11
    class MyData
    {
        public double X { get; private set; }
        public double Y { get; private set; }
 
        public MyData(double x, double y)
        {
            this.X = x;
            this.Y = y;
        }
    }
А вот вам пример привязки:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
        private void Form1_Load(object sender, EventArgs e)
        {
            List<MyData> list = new List<MyData>();
            list.Add(new MyData(3.4, 5.7));
            list.Add(new MyData(5.3, 3.2));
            list.Add(new MyData(7.2, 10.0));
            chart1.Series[0].XValueMember = "X";
            chart1.Series[0].YValueMembers = "Y";
            chart1.DataSource = list;
            chart1.DataBind();
            list.Add(new MyData(9.4, 7.3));
            chart1.DataBind();
        }
Вот это действие надо делать обязательно, чтобы отразить изменения:
C#
1
    chart1.DataBind();
Результат работы:
Data binding / привязка данных


Если у вас несколько серий, то расширьте класс MyData и допишите строчки, на подобие этих:
C#
1
2
            chart1.Series[0].XValueMember = "X";
            chart1.Series[0].YValueMembers = "Y";
2
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
28.08.2011, 11:25 8
Цитата Сообщение от sol@ris Посмотреть сообщение
Класс Chart, если интересно, находится во вкладке "Данные" панели инструментов Windows Forms.
sol@ris, тут следовало уточнить, что у тебя VS 2010, т.к. Chart появился именно с этой версии

Вот тебе ответ http://msdn.microsoft.com/ru-r... ource.aspx
1
28.08.2011, 11:25
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.08.2011, 11:25
Помогаю со студенческими работами здесь

Связывание данных (data binding) & ADO
Помогите, плз. Никак не могу заставить привязаться Аксессовскую таблицу к моей ВЕБ-странице. Хочу...

Привязка данных между графикам ChartPlotter Dynamic Data Display
Добрый день! Подскажите, есть ли возможность привязки данных нескольких графиков только по оси...

Gridview привязка binding
Подскажите мне пжлст что я сделал не так? 1) создал некоторый класс Car с 2мя полями там марка и...

Не получается привязка (Binding)
Пишу twitter клиент пользуясь паттерном MVVM. Вся механика вытаскивания твиттов с твиттера...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Алгоритмика
hw_wired 28.01.2025
Введение: Основы алгоритмики и её роль в информатике В современном мире программирование и алгоритмическое мышление стали неотъемлемой частью образования и профессиональной деятельности. . . .
Информационное моделирование
hw_wired 28.01.2025
Введение в информационное моделирование В современном мире информационное моделирование стало неотъемлемой частью научной, образовательной и профессиональной деятельности. Это мощный инструмент. . .
Объекты и их имена
hw_wired 28.01.2025
Введение: Основы объектного подхода и их роль в информатике В современном мире информационных технологий объектный подход стал фундаментальным принципом организации и обработки информации. Этот. . .
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
Компьютер для начинающих
hw_wired 28.01.2025
Введение в мир компьютерных технологий В современном мире информация стала одним из важнейших ресурсов человечества, определяющим развитие общества и технологий. Наша жизнь неразрывно связана с. . .
[golang] 189. Rotate Array
alhaos 28.01.2025
Повороты рукоятки, целочисленный слайс нужно сдвинуть на целое положительное число. Мне очень нравится решение на GO / / https:/ / leetcode. com/ studyplan/ top-interview-150/ package topInterview . . .
КуМир: решение задач на матрицы
bytestream 28.01.2025
КуМир представляет собой среду для обучения программированию, которая включает в себя мощные инструменты для работы с матрицами. Матрица в программировании - это двумерный массив, состоящий из. . .
КуМир: решение задач на строки
bytestream 28.01.2025
В системе программирования КуМир работа со строковыми данными является одним из важнейших аспектов создания программ. Строки представляют собой последовательности символов, заключенные в кавычки,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru