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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2010, 17:41   #1
POGONEZ
Пользователь
 
Регистрация: 14.03.2010
Сообщений: 17
По умолчанию Перелистывание глав книги

Объясните как перелистывать страницы.
Есть книга,каждая глава этой книги лежит в отдельном документе.Мне нужно чтобы по нажатию кнопки вперед,назад перелистывалась глава-осуществлялся переход на другую главу книги
Есть код,но не могу понять почему он не видит остальные документы.Точнее понимаю,нужна помощь,в коментах написано где.Эту часть кода писал не я
Код:
 public Form2(int sctn, int chptr, string title, int prgrph, int smpl)
        {
            InitializeComponent();
            section = sctn;
            chapter = chptr;
            sample = smpl;
            paragraphTotal = prgrph;
            paragraphNow = 1;
            lbTotal.Text = paragraphTotal.ToString();
            
           
        }
 
        private void Form2_Load(object sender, EventArgs e)
        {
            Switch_pages();
        }
 
        public void Switch_pages()
        {
            if (paragraphNow >= paragraphTotal)
                btForward.Enabled = false;
            else
                btForward.Enabled = true;
            if (paragraphNow > 1)
                btBack.Enabled = true;
            else
              btBack.Enabled = false;
            
 //Тут мне кажется должна быть строчка указывающая на не на сам первый параграф,
а на файл в котором будет список всех параграфов книги.
            FileStream maintext = new FileStream("Page1.html", FileMode.Open, FileAccess.Read);  
 
            StreamReader text = new StreamReader(maintext);
            wbMainText.DocumentText = design + "</html>";
            tbNow.Text = paragraphNow.ToString();
            text.Close();
            maintext.Close();
           
            
        }
 
          
        private void btForward_Click(object sender, EventArgs e)
        {
           
           paragraphNow += 1;            //переход на следущий параграф
           Switch_pages();
        }
 
        private void btBack_Click(object sender, EventArgs e)
        {
           
            paragraphNow -= 1;         //Переход на предыдущий параграф
            Switch_pages();
        }
 
        private void tbNow_TextChanged(object sender, EventArgs e)
        {
            paragraphNow = int.Parse(tbNow.Text);
            Switch_pages();
 
        }

Последний раз редактировалось Stilet; 16.03.2010 в 07:46.
POGONEZ вне форума Ответить с цитированием
Старый 14.03.2010, 21:25   #2
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

ваша переменная paragraphNow номер который нада открыть
Код:

            FileStream maintext = new FileStream("Page"+paragraphNow+".html", FileMode.Open, FileAccess.Read);
Cpluser вне форума Ответить с цитированием
Старый 15.03.2010, 18:11   #3
POGONEZ
Пользователь
 
Регистрация: 14.03.2010
Сообщений: 17
По умолчанию

Вот еще забыл,это самое начало.
Код:

namespace Book
{
    public partial class Form2 : Form
    {
        int section, chapter, sample;
        int paragraphTotal;
        int paragraphNow;
        static StreamReader des = new StreamReader("Page1.html");
 //вот из-за этого постоянно грузится только первый документ,а дальше код фактически не работает
        static string design = des.ReadToEnd();
Поэтому даже если я исправлю ниже в коде,всю равно продолжает грузится первый документ,а переход между ними не пашет.

Последний раз редактировалось Stilet; 16.03.2010 в 07:47.
POGONEZ вне форума Ответить с цитированием
Старый 15.03.2010, 19:34   #4
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

Когда заргужаетса пусть так и будет!
А когда жмете на батон загружайте
Код:

           
  FileStream maintext = new FileStream("Page"+paragraphNow+".html", FileMode.Open, FileAccess.Read);

            StreamReader text = new StreamReader(maintext);
            wbMainText.DocumentText = design + "</html>";
            tbNow.Text = paragraphNow.ToString();
Cpluser вне форума Ответить с цитированием
Старый 15.03.2010, 20:26   #5
POGONEZ
Пользователь
 
Регистрация: 14.03.2010
Сообщений: 17
По умолчанию

Что-то не работает,когда нажимаю на кнопку вперед перелистывание не происходит,остается все тот же документ Page1.html.
Когда нажимаю кнопку пару раз,происходит ошибка,мол Page3.html не найден,значит он листает документы,но почему-то не отображает Page2.html
POGONEZ вне форума Ответить с цитированием
Старый 15.03.2010, 20:31   #6
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

прикрепите проект!
Cpluser вне форума Ответить с цитированием
Старый 15.03.2010, 23:17   #7
POGONEZ
Пользователь
 
Регистрация: 14.03.2010
Сообщений: 17
По умолчанию

http://www.filehoster.ru/files/ev3590



Это книга,и переход в среду разработки


Книга с переходом в среду разработке

Проект переход из книги в среду разработки
http://www.filehoster.ru/files/ev3590

Последний раз редактировалось Stilet; 16.03.2010 в 07:47.
POGONEZ вне форума Ответить с цитированием
Старый 16.03.2010, 07:06   #8
canki
 
Регистрация: 16.03.2010
Сообщений: 6
По умолчанию

просто присваивание html-кода в свойство DocumentText ничего не даст.
Для того чтобы страница была разобрана браузером необходимо вызвать метод Navigate, причем путь к файлу надо указывать полностью.

например

wbMainText.Navigate("file://"+Environment.CurrentDirectory+"\\P age1.html");

тогда и проблем с картинками не должно быть
canki вне форума Ответить с цитированием
Старый 16.03.2010, 19:09   #9
POGONEZ
Пользователь
 
Регистрация: 14.03.2010
Сообщений: 17
По умолчанию

Чет не получается,пишет проверьте правильность пути или адрес в интернете
пишу вот так
Код:
wbMainText.Navigate("file://Users\\Documents\\Visual Studio 2008\\Projects\\Book\\Book\\bin\\Debug//" + Environment.CurrentDirectory + "\\Page1.html");

Последний раз редактировалось POGONEZ; 16.03.2010 в 19:13.
POGONEZ вне форума Ответить с цитированием
Старый 16.03.2010, 20:19   #10
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

Попробуйте так
Код:
wbMainText.Navigate("C:\\Pag1.html");
Cpluser вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перелистывание изображений msk11 Помощь студентам 3 12.03.2010 21:30
Поменять нулевые эл-ты относит. глав.диаг. HIP-H0P Помощь студентам 8 11.11.2009 23:09
книги Chudo4258 Помощь студентам 0 09.09.2009 20:15
снятие пароля с книги/листа из другой книги? Bezdar Microsoft Office Excel 3 25.12.2008 11:59