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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> мини Файл Браузер, не открывается файл выбранный в ListView 
V
    Опции темы
Barabeo
Дата 29.2.2012, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



На форме лежит TabControl. На первой закладке TabControl находится ListView. На второй - richTextBox1.
В ListView отображается список файлов. Щелчек по файлу должен вывести текст в richTextBox1.
Но этого не происходит.
Почему?

Код

        private void listView_OnItemActivate(object sender, EventArgs e)
        {
            foreach (ListViewItem lvi in listView.SelectedItems)
            {
                string ext = Path.GetExtension(lvi.Text).ToLower();

                if (ext == ".txt" || ext == ".mht" || ext == ".html")
                {
                    try
                    {
                        richTextBox1.LoadFile(Path.Combine(fullPath, lvi.Text),
                        RichTextBoxStreamType.RichText);

                        //statusBar1.Text = lvi.Text;
                    }
                    catch
                    {
                        return;
                    }
                }
            }
        }


Это сообщение отредактировал(а) Barabeo - 29.2.2012, 13:18
PM MAIL   Вверх
Voyager
Дата 29.2.2012, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Да кто ж его знает? Мистика, не иначе!
PM   Вверх
Barabeo
Дата 29.2.2012, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Вот весь код.
В чем может быть дело?

Код

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;


namespace Qu
{
    public partial class Form1 : Form
    {
        string fullPath;

        public Form1()
        {
            InitializeComponent();
            DriveTreeInit();
        }

        //метод инициализации дерева DriveTreeInit
        public void DriveTreeInit()
        {
            string[] drivesArray = Directory.GetLogicalDrives();

            tView.BeginUpdate();
            tView.Nodes.Clear();

            foreach (string s in drivesArray)
            {
                TreeNode drive = new TreeNode(s, 0, 0);
                tView.Nodes.Add(drive);

                GetDirs(drive);
            }

            tView.EndUpdate();
        }

        //получение списка каталогов
        public void GetDirs(TreeNode node)
        {
            DirectoryInfo[] diArray;
            node.Nodes.Clear();

            string fullPath = node.FullPath;
            DirectoryInfo di = new DirectoryInfo(fullPath);

            try
            {
                diArray = di.GetDirectories();
            }
            catch
            {
                return;
            }

            foreach (DirectoryInfo dirinfo in diArray)
            {
                TreeNode dir = new TreeNode(dirinfo.Name, 1, 2);
                node.Nodes.Add(dir);
            }
        }

        private void tView_OnBeforeExpand(object sender, TreeViewCancelEventArgs e)
        {
            tView.BeginUpdate();

            foreach (TreeNode node in e.Node.Nodes)
            {
                GetDirs(node);
            }

            tView.EndUpdate();
        }

        private void tView_OnAfterSelect(object sender, TreeViewEventArgs e)
        {
            TreeNode selectedNode = e.Node;
            fullPath = selectedNode.FullPath;

            DirectoryInfo di = new DirectoryInfo(fullPath);
            FileInfo[] fiArray;
            DirectoryInfo[] diArray;

            try
            {
                fiArray = di.GetFiles();
                diArray = di.GetDirectories();
            }
            catch
            {
                return;
            }

            listView.Items.Clear();

            foreach (DirectoryInfo dirInfo in diArray)
            {
                ListViewItem lvi = new ListViewItem(dirInfo.Name);
                listView.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
                lvi.SubItems.Add("0");
                lvi.SubItems.Add(dirInfo.LastWriteTime.ToString());
                lvi.ImageIndex = 1;
                

                listView.Items.Add(lvi);
            }


            foreach (FileInfo fileInfo in fiArray)
            {
                ListViewItem lvi = new ListViewItem(fileInfo.Name);
                lvi.SubItems.Add(fileInfo.Length.ToString());
                lvi.SubItems.Add(fileInfo.LastWriteTime.ToString());

                string filenameExtension = Path.GetExtension(fileInfo.Name).ToLower();

                switch (filenameExtension)
                {
                    case ".mht":
                        {
                            lvi.ImageIndex = 3;
                            break;
                        }
                    default:
                        {
                            lvi.ImageIndex = 4;
                            break;
                        }
                }

                listView.Items.Add(lvi);
            }
        }

        private void listView_OnItemActivate(object sender, EventArgs e)
        {
            foreach (ListViewItem lvi in listView.SelectedItems)
            {
                string ext = Path.GetExtension(lvi.Text).ToLower();

                if (ext == ".txt" || ext == ".mht" || ext == ".html")
                {
                    try
                    {
                        richTextBox1.LoadFile(Path.Combine(fullPath, lvi.Text),
                        RichTextBoxStreamType.RichText);
                        tabControl1.SelectedIndex = 2;
                    }
                    catch
                    {
                        return;
                    }
                }
            }
        }


    }
}


PM MAIL   Вверх
Barabeo
Дата 1.3.2012, 09:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Если пытаюсь вывести файл .mht в WebBrowser:

Код

        private void listView_OnItemActivate(object sender, EventArgs e)
        {
            foreach (ListViewItem lvi in listView.SelectedItems)
            {
                string ext = Path.GetExtension(lvi.Text).ToLower();
                string p;

                if (ext == ".txt" || ext == ".mht" || ext == ".html")
                {
                    try
                    {
                        p = Path.Combine(fullPath, lvi.Text);
                        webBrowser1.Navigate(p);
                    }
                    catch
                    {
                        return;
                    }
                }
            }
        }


То вываливается ошибка:
Не удается найти файл -- путь -- .Проверьте правильность пути или адреса в Интернете.

Хотя таким образом
Код

string path = Application.StartupPath + @"\text\bomb.mht";
            webBrowser1.Navigate(path);

все открывается.

Может кто-нибудь подскажет?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

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


 




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


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

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