Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [С#] WFA построение иерархии с помощью TreeView 
:(
    Опции темы
vsuperator
Дата 14.6.2013, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Добрый день форумчанам!Дали мне задание построить что то типа файл браузера:
user posted image
А теперь что нужно:
1.Как то отрабатывать что бы в TextBox1 вводились только пути к папкам
2.Что бы отобржение иерархии было в тревью (всей иерархии)
3.Поиск по  тревью по расширению файла и перекраска
4.Запись иерархии в XMl файл
Буду очень благодарен за помощь, если кто готов взяться сделать то пишите стоимость и срок.
Код

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 System.IO;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {
            listView1.Clear();
            Font font = new Font(FontFamily.GenericMonospace, 12F, FontStyle.Bold);
            string[] dirs = Directory.GetDirectories(treeView1.SelectedNode.Text);
            foreach (string dir in dirs)
            {
                listView1.Items.Add(dir, 0);
                try
                {
                    IEnumerable<string> filesList = Directory.EnumerateFiles(dir);
                    foreach (var file in filesList)
                    {
                        treeView1.SelectedNode.Nodes.Add(file);
                        treeView1.SelectedNode.Nodes[treeView1.SelectedNode.Nodes.Count - 1].NodeFont = font;
                    }
                }
                catch (Exception ex)
                {
                    var mess = ex.Message;
                }
                treeView1.SelectedNode.Nodes.Add(dir);
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {

            string[] ids = Directory.GetDirectories(textBox1.Text);
            foreach (string id in ids)
            {
                treeView1.Nodes.Add(id);
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
        }

        private void listView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            ListView listView = (ListView)sender;
            var path = listView.SelectedItems[0].Text;
            IEnumerable<string> filesList = Directory.EnumerateFiles(path);
            listView.Items.Clear();
            foreach (string file in filesList)
            {
                listView.Items.Add(file, 0);
                //treeView1.SelectedNode.Nodes.Add(dir);
            }
        }
    }
}



PM MAIL   Вверх
vsuperator
Дата 17.6.2013, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Все сделано, если кому будет интересен код, пишите, скину.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

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


 




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


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

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