none
Вот как в Windows 8 RRS feed

  • Вопрос

  • Хочу сделать как в Windows 8. Имеется набор строк в базе. И надо вывести строку где то (Вот 1-й вопрос где её лучше вывести в TextBlock или в ListView(по высоте со строку)) почему 1-й вопрос возник? Он вытекает из второго.

    2-й вопрос как сделать через определенное время (например через 5-6сек) отображение текста из следующей строки в базе.

    Видимо это тики и видимо разные потоки но разные потоки с возможностью использования данных и из других потоков. Нет примера? По отдельности тики и по отдельности потоки не могу свести в одну информацию.

    Просто считывание данных из базы и занесение их в строку это реализовать смогу вроде.



    7 июня 2012 г. 17:15

Ответы

  • Вы это хотите в WPF сделать? Дело в том, что в Metro (а точнее в .Net 4.5) появилась новая фишка с фоновыми запросами. Я бы сделал такое на WPF 4.0 так - задал бы таймер который раз в N секунд вызывает фоновую (в другом потоке) задачу, та считывает очередную строчку из базы и сохраняет в переменную. Переменная передается в поток UI и присваивается свойству зависмости к которому привязан TextBlock. Все каждые N секунд у вас меняется надпись на следующую.

    Обратите внимание, что обычные переменные легко гуляют между потоками, если обращаться к ним по значению а не по ссылке.

    Пример кода не дам, так как пишу на VB, но в целом концепция вам должна быть понятна. Плюс можете посмотреть про потоки в этой и этой теме, ну и конечно же раздел на MSDN.


    Женат на WPF. Тайно встречаюсь с WinRT. Не сложилось с C#!

    • Помечено в качестве ответа developers_s 8 июня 2012 г. 3:44
    7 июня 2012 г. 17:56
    Отвечающий

Все ответы

  • Вы это хотите в WPF сделать? Дело в том, что в Metro (а точнее в .Net 4.5) появилась новая фишка с фоновыми запросами. Я бы сделал такое на WPF 4.0 так - задал бы таймер который раз в N секунд вызывает фоновую (в другом потоке) задачу, та считывает очередную строчку из базы и сохраняет в переменную. Переменная передается в поток UI и присваивается свойству зависмости к которому привязан TextBlock. Все каждые N секунд у вас меняется надпись на следующую.

    Обратите внимание, что обычные переменные легко гуляют между потоками, если обращаться к ним по значению а не по ссылке.

    Пример кода не дам, так как пишу на VB, но в целом концепция вам должна быть понятна. Плюс можете посмотреть про потоки в этой и этой теме, ну и конечно же раздел на MSDN.


    Женат на WPF. Тайно встречаюсь с WinRT. Не сложилось с C#!

    • Помечено в качестве ответа developers_s 8 июня 2012 г. 3:44
    7 июня 2012 г. 17:56
    Отвечающий
  • Небольшой уточняющий вопрос, вы Desctop приложение пишите или Metro Style?
    7 июня 2012 г. 18:39
    Отвечающий
  • Desktop для windows 7
  • А почему и для чего тогда в заголовке указано Windows 8, если у вас обычное WPF приложение и для Windows 7?


    Для связи [mail]

    8 июня 2012 г. 10:36
  • А почему и для чего тогда в заголовке указано Windows 8, если у вас обычное WPF приложение и для Windows 7?


    Для связи [mail]

    Дмитрий я сам не сразу сообразил, но потом понял что автор вопроса подразумевал поведение Metro-приложений для своего WPF

    Женат на WPF. Тайно встречаюсь с WinRT. Не сложилось с C#!

    8 июня 2012 г. 10:38
    Отвечающий
  • Всё верно - есть у меня обычное приложение для win7 делаю аналог для Win8 но параллельно переделываю win7 как в win8. Так сказать плавно перевожу пользователей под новый стиль Metro