ФорумПрограммированиеБольше языковC/C++ и C# → Пара вопросов по шарпу

Пара вопросов по шарпу

  • MeDveZatNIK

    Сообщения: 28 Репутация: N Группа: Кто попало

    Spritz Май 6, 2010, 10:12 п.п., спустя 17 дней 20 часов 59 минут

    Есть дерево и его нужно генерировать на ходу из xml-файла. Как это можно сделать ? С xml ладно, там все просто. А вот как находу генерировать ветки TreeView, я не могу понять.
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz Май 7, 2010, 3:15 д.п., спустя 5 часов 3 минуты 47 секунд

    еще два вопроса:
    1) когда приложение выполняет какую-либо длительную операцию, как сделать так, чтобы окошко не зависало и можно было сделать кнопку "отмена"
    2) как реализуется эта самая "отмена"? рыть в сторону многопоточности?
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz Май 7, 2010, 9:37 п.п., спустя 18 часов 21 минуту 51 секунду


    Есть дерево и его нужно генерировать на ходу из xml-файла. Как это можно сделать ? С xml ладно, там все просто. А вот как находу генерировать ветки TreeView, я не могу понять.
    зайти в офф. доку и узнать собственно, ничего сверхъестественного нет
    еще два вопроса:
    1) когда приложение выполняет какую-либо длительную операцию, как сделать так, чтобы окошко не зависало и можно было сделать кнопку "отмена"
    2) как реализуется эта самая "отмена"? рыть в сторону многопоточности?

    да, если операция длится в цикле, то делаешь в отдельном потоке while (boolean) { … }
    а по нажати на кнопку отмена делаешь boolean = false или Thread.Abort();
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz Май 7, 2010, 10:52 п.п., спустя 1 час 14 минут 50 секунд

    да, если операция длится в цикле, то делаешь в отдельном потоке while (boolean) { … }
    а по нажати на кнопку отмена делаешь boolean = false или Thread.Abort();

    спасибо
  • Kvs

    Сообщения: 420 Репутация: N Группа: Кто попало

    Spritz Ноя. 23, 2010, 11:16 п.п., спустя 200 дней 1 час 23 минуты

    тут такое дело

    /*
    * Created by SharpDevelop.
    * User: user
    * Date: 23.11.2010
    * Time: 23:08
    *
    * To change this template use Tools | Options | Coding | Edit Standard Headers.
    */

    using System.Windows.Forms;


    class Program
    {
    public static void Main()
    {

    Application.run(new Form());

    }
    }

    чего он хочет?

    Имя типа или пространства имен 'Windows' отсутствует в пространстве имен 'System' (пропущена ссылка на сборку?) (CS0234) - C:\Users\user\Desktop\mysoft\mysoft\Program.cs:10,14
    Спустя 150 сек.
    может унаследовать надо?
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz Ноя. 23, 2010, 11:22 п.п., спустя 6 минут 46 секунд

    Solution Explorer -> Add Reference -> System.Windows.Forms;
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • Kvs

    Сообщения: 420 Репутация: N Группа: Кто попало

    Spritz Ноя. 23, 2010, 11:34 п.п., спустя 12 минут 9 секунд


    Solution Explorer -> Add Reference -> System.Windows.Forms;


    'System.Windows.Forms.Application' не содержит определение для 'run' (CS0117) - C:\Users\user\Desktop\cc\cc\Program.cs:18,25
    Спустя 138 сек.
    все разобрался
     */
    using System;
    using System.Windows.Forms;

    namespace test
    {
    /// <summary>
    /// Class with program entry point.
    /// </summary>
    internal sealed class Program
    {
    /// <summary>
    /// Program entry point.
    /// </summary>
    [STAThread]
    private static void Main()
    {
    Form frm = new Form();
    frm.Text = "My soft";
    frm.Width *= 2;
    Application.Run(frm);
    }

    }
    }

  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz Ноя. 23, 2010, 11:37 п.п., спустя 2 минуты 28 секунд

    я конечно понимаю что ты хочешь все и сразу, но так дела не делаются

    то ты искал метод консольного приложения Main в оконном приложении, теперь хочешь захостить форму в консольном приложении… определись чего ты хочешь =)
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • Kvs

    Сообщения: 420 Репутация: N Группа: Кто попало

    Spritz Ноя. 23, 2010, 11:45 п.п., спустя 7 минут 42 секунды

    так и теперь вопрос жизни и смерти, как получить ехешник?
    Спустя 79 сек.
    я хочу создать оконное приложение и мне нет разницы какое оно. Правда консолька которая вспыхивает при run меня смущает
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz Ноя. 23, 2010, 11:50 п.п., спустя 5 минут 17 секунд

    F6
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • Kvs

    Сообщения: 420 Репутация: N Группа: Кто попало

    Spritz Ноя. 23, 2010, 11:53 п.п., спустя 2 минуты 49 секунд


    F6
    ошибку выдает , в окне
    Спустя 16 сек.
    у меня ШарпДевелопер
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz Ноя. 23, 2010, 11:56 п.п., спустя 3 минуты 13 секунд

    короче ищи окно в папке с проектом bin\debug
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • Kvs

    Сообщения: 420 Репутация: N Группа: Кто попало

    Spritz Ноя. 23, 2010, 11:58 п.п., спустя 2 минуты 18 секунд

    там есть)
    А как программе иконку задать свою? И посоветуй программу для создания инсталятора)
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz Ноя. 24, 2010, 12:01 д.п., спустя 2 минуты 25 секунд

    в свойствах проекта

    ClickOnce
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz Ноя. 24, 2010, 12:02 д.п., спустя 1 минуту 8 секунд

    то ты искал метод консольного приложения Main в оконном приложении,

    В любом Win-приложении есть метод Main, к коим и консоль относиться.

    теперь хочешь захостить форму в консольном приложении…

    У него там все в порядке. Это не обязательно консоль.

    Правда консолька которая вспыхивает при run меня смущает

    Это уже в настройки проекта. Нужно поменять тип с консольного на оконное

    Кстати, сам делал, диалоговые окна запускал из под консоли и всякие MessageBox. Другое дело служба, из под нее можно все. Но она работает в другом WinStation и даже если ты запускаешь окна, то их не видно. Ощущение создается, как будто службы работают under ground, хотя оно, так и есть)))
    Спустя 36 сек.
    В том же Visual Studio можно создавать инсталлятор =))

Пожалуйста, авторизуйтесь, чтобы написать комментарий!