Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Windows Forms
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2015, 17:03   #11
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

А где определен zgControl? Как он по отношению к этому коду расположен? В области видимости?
p51x вне форума Ответить с цитированием
Старый 08.10.2015, 17:26   #12
Krasi
Форумчанин
 
Регистрация: 12.02.2010
Сообщений: 787
По умолчанию

Что-то боюсь я заморачиваться сейчас с zgControl. Давайте другой пример. Например, я хочу, чтобы код заработал со строчкой
Код:
ZedGraph.AxisChange();
Сейчас компилятор пишет:
Цитата:
Ошибка CS0234 Тип или имя пространства имен "AxisChange" не существует в пространстве имен "ZedGraph" (возможно, отсутствует ссылка на сборку). Bin_creator C:\Users\user\Documents\Visual Studio 2015\Projects\Bin_creator\Bin_creat or\FormM.cs
Я не только ведь добавил dll, как показал Alex11223, но и написал вначале кода своей формы:
Код:
using ZedGraph;
Как так?
Krasi вне форума Ответить с цитированием
Старый 08.10.2015, 17:39   #13
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Надо объявить объекты соответствующих классов и вызывать их методы, а не пытаться вызвать то, чего нет.
p51x вне форума Ответить с цитированием
Старый 08.10.2015, 20:49   #14
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Здесь есть примеры.Разобраться не трудно,можно и архив с примерами скачать на этом сайте.
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 09.10.2015, 08:43   #15
Krasi
Форумчанин
 
Регистрация: 12.02.2010
Сообщений: 787
По умолчанию

Не получается. Что я конкретно не объявил для компиляции вышеупомянутой строчки? Смотрю примеры - там есть только using ZedGraph

Последний раз редактировалось Krasi; 09.10.2015 в 08:45.
Krasi вне форума Ответить с цитированием
Старый 09.10.2015, 09:29   #16
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

там есть объекты ZedGraphContol...
p51x вне форума Ответить с цитированием
Старый 09.10.2015, 09:59   #17
Krasi
Форумчанин
 
Регистрация: 12.02.2010
Сообщений: 787
По умолчанию

Уже что-то проясняется. Не могу сделать так, чтобы оси ZedGraphа просто появились в моем GUI, что происходит, чего я не добавил?

Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using ZedGraph;


namespace Bin_creator
{
    public partial class FormM : Form
    {
        public FormM()
        {
            InitializeComponent();
           
            
        }

    private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void richTextBox1_TextChanged(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            /////////////////Представляем символы в двоичном виде и выводим на график/////////////////
            //////////////////////////////////////////////////////////////////////////////////////////  
            string A = richTextBox1.Text;
            byte[] strBytes = System.Text.Encoding.Unicode.GetBytes(A);
            //string str = Encoding.ASCII.GetString(strBytes);

            StringBuilder sb = new StringBuilder();
            foreach (byte b in System.Text.Encoding.Unicode.GetBytes(A))
                sb.Append(Convert.ToString(b, 2).PadLeft(8, '0')).Append(' ');

            string binaryStr = sb.ToString();                  //////////////Массив 0 и 1

            this.Controls["richTextBox2"].Text = binaryStr;
            ////////////////////////////////////////////////////////////////Создание значений x
            int l = strBytes.Length;                           
            int[] myArr = new int[l];
            // Инициализируем каждый элемент массива вручную
            for (int i = 0; i < l; i++)
            myArr[i] = i;

            
                chart1.Series["Series1"].Points.DataBindXY(myArr, strBytes);

            ZedGraphControl zedGraph = new ZedGraphControl();
            zedGraph.Location = new System.Drawing.Point(400, 400);
            zedGraph.Name = "zedGraph";
            zedGraph.Size = new System.Drawing.Size(100, 100);
            this.Controls.Add(zedGraph);
            ZedGraphControl zgc = zedGraph;
            GraphPane myPane = zgc.GraphPane;
            // Set the titles and axis labels
            //myPane.Title.Text = "Axis Cross Demo";
            //myPane.XAxis.Title.Text = "My X Axis";
            //myPane.YAxis.Title.Text = "My Y Axis";
            double x, y;
            PointPairList list = new PointPairList();
            for (int i = 0; i < 37; i++)
            {
                x = ((double)i - 18.0) / 5.0;
                y = x * x + 1.0;
                list.Add(x, y);
                LineItem myCurve = myPane.AddCurve("Parabola",
               list, Color.Green, SymbolType.Diamond);

                zgc.AxisChange();
                zgc.Refresh();
            }

        }

        private void richTextBox2_TextChanged(object sender, EventArgs e)
        {

        }

        private void chart1_Click(object sender, EventArgs e)
        {

        }


    }
}
Я так понимаю, что это должно происходить при нажатии на кнопку при помощи функции this.Controls.Add(zedGraph); Так вот, не происходит!

Последний раз редактировалось Krasi; 09.10.2015 в 10:02.
Krasi вне форума Ответить с цитированием
Старый 09.10.2015, 11:10   #18
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Что именно не появляется-то? Сам контрол на форме или данные на нем?

Если первое, то вроде должно работать. Может 400, 400 это за пределами формы.

Можно просто из списка контролов в дизайнере добавить на форму, как и остальные контролы.
Если его там нету, то ПКМ—>Choose Items

и там нажать кнопку для выбора файла .dll
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 09.10.2015, 12:21   #19
Krasi
Форумчанин
 
Регистрация: 12.02.2010
Сообщений: 787
По умолчанию

Вы правы, я увидел график, когда вместо чисел 400 поставил значения 100! Сейчас поразбираюсь
Krasi вне форума Ответить с цитированием
Старый 09.10.2015, 12:39   #20
Krasi
Форумчанин
 
Регистрация: 12.02.2010
Сообщений: 787
По умолчанию

Alex11223, шикарно, прикладываю скрин. Но теперь я не могу изменить наименования осей и титл. Я нашел 3 строчки, которые за это отвечают:
Код:
//myPane.Title.Text = "Axis Cross Demo";
//myPane.XAxis.Title.Text = "My X Axis";
//myPane.YAxis.Title.Text = "My Y Axis";
При попытке запуска программы, убрав комментирование, я получаю ошибку, связанную с .Text:
Цитата:
CS1061 'string" не содержит определения для "Text" и не удалось найти метод расширения "Text", принимающий тип "string" в качестве первого аргумента (возможно, пропущена директива using или ссылка на сборку). Bin_creator C:\Users\user\documents\visual studio 2015\Projects\Bin_creator\Bin_creat or\FormM.cs 63
Изображения
Тип файла: jpg МистерБин.jpg (69.0 Кб, 128 просмотров)
Krasi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
подключить c++/cli библиотеку D][mon C# (си шарп) 1 31.10.2013 04:20
Как подключить библиотеку??? Benera Общие вопросы Delphi 6 27.04.2012 13:12
C::B подключить библиотеку KemanSR Общие вопросы C/C++ 9 05.02.2012 22:36
Как подключить библиотеку. Dasharnb777 Общие вопросы .NET 4 30.09.2010 12:14