Как правильно готовить WPF + MVVM приложения

Поділитися
Вставка
  • Опубліковано 17 жов 2024
  • Наш телеграм чат: t.me/bashkamen... Project: github.com/Bas...
    GitHub: github.com/Bas...
    Telegram: @BashkaMen
    Поддержка канала: secure.wayforp...
    В этом видео я покажу как в WPF приложении реализовать навигацию, общение между вью моделями и применение DI контейнеров.

КОМЕНТАРІ • 83

  • @SVDiakov
    @SVDiakov 4 роки тому +6

    Спасибо за уроки по WPF. В сети очень мало хороших статей и курсов. Надеюсь на продолжение, автору респектище!!!

  • @МихаилСедов-ж7ш
    @МихаилСедов-ж7ш 4 роки тому +2

    мужик, спасибо, Иван, 17 лет, студент 2 курса ПТУ

  • @НатаниэльДампо
    @НатаниэльДампо 4 роки тому +3

    Спасибо за то что делаешь мир лучше...

  • @northmule
    @northmule 4 роки тому +7

    Огонь, я было подумал канал мёртв :)

  • @Shuhret
    @Shuhret 4 роки тому +3

    С возвращением.

  • @camoucloud
    @camoucloud 4 роки тому +3

    Возвращайся почаще (по возможности)!

  • @Andrew_Moryakov
    @Andrew_Moryakov 4 роки тому +4

    Очень полезно, мало уроков по впф в сети

    • @BartimaeusVS
      @BartimaeusVS 4 роки тому

      у angelsix, к примеру, курс на 40+часов по разработке приложения с нуля на wpf

  • @djserega
    @djserega 4 роки тому

    Спасибо что вернулся.
    Вот по дискорду нашёл этот видос. :)
    А так, благодаря твоим видео, я уже переписываю свои приложения. Понял что не по mvvm написано :)

  • @SoferPeOZN
    @SoferPeOZN 4 роки тому +1

    Уважаю

  • @BashkaMen
    @BashkaMen  4 роки тому +26

    Привет, скажите, хотите ли вы стрим?

  • @yz777zhumabayev6
    @yz777zhumabayev6 2 роки тому

    Большое спасибо!

  • @jonestako4721
    @jonestako4721 4 роки тому +4

    thanks

  • @andmisul
    @andmisul 4 роки тому

    Привет! А куда делись предыдущие стримы? Отложил, чтобы посмотреть практическое применение технологий, зашел - ничего нет...

    • @BashkaMen
      @BashkaMen  4 роки тому

      Андрей Добрый кто то со стрима зашел в базу, все там удалил и требовал выкуп данных, потому стримы я удалил дабы не осталась информация с паролями к бд, но будет итоговое видео, не переживай.

  • @СмартБой
    @СмартБой 4 роки тому +1

    Обожнюю твої відеоуроки

  • @Unknown_Eugene
    @Unknown_Eugene Рік тому

    Автор, подскажи пожалуйста, а как использовать OnPropertychanged в DevExpress? Если нужно отследить изменение поля на форме (когда юзер что-то вводит)

    • @BashkaMen
      @BashkaMen  Рік тому

      Создать полное свойство и в коде setter'a дописать нужную логику

    • @Unknown_Eugene
      @Unknown_Eugene Рік тому

      @@BashkaMen спасибо, попробую

  • @dogew6751
    @dogew6751 4 роки тому +4

    Возможно, лучшее объяснение было бы с использованием отладчика, тем самым более толково будет выглядеть взаимодействие каждого куска кода в программе

    • @BashkaMen
      @BashkaMen  4 роки тому

      Учту этот совет в дальнейших видео.

  • @Дмитрийм-л7ф
    @Дмитрийм-л7ф 4 роки тому

    спасибо. А продолжение по WPF будет???

  • @user-ffffffff
    @user-ffffffff 4 роки тому

    Хмм... Хороший подход, вот только одна проблема, страницы создаются во вью модели а этого нельзя. Не по канонам mvvm. Может стоит переложить ответственность создания страницы на сервис?

    • @BashkaMen
      @BashkaMen  4 роки тому

      Хорошее замечание, но я упускаю это правило так как остается хороший читаемый код.
      Страницы действительно можно перенести в сервис и оперировать только вьюмоделями, или вообще написать свою роутинг систему и оперировать ссылками

    • @SergeiCalabonga
      @SergeiCalabonga 4 роки тому

      @@BashkaMen а вы PRISM не использовали? Или MVVMLight?

    • @BashkaMen
      @BashkaMen  4 роки тому

      Использовал, но мне хватает DevExpress так как мне не нужен целый фреймворк, а только пару классов (комманды, и базовый класс)

    • @SergeiCalabonga
      @SergeiCalabonga 4 роки тому

      @@BashkaMen понятно, спасибо. А свой фреймворк никогда не было желания написать? :)

    • @BashkaMen
      @BashkaMen  4 роки тому +1

      Sergei Calabonga ну фреймворк врядли, а вот библиотеку со стартовым набором можно:)

  • @SergeiCalabonga
    @SergeiCalabonga 4 роки тому

    А как работать с Attached Property и Behavior
    через MVVM?

    • @BashkaMen
      @BashkaMen  4 роки тому

      Сделаю отдельный урок, если ответ нужен сейчас пишите в группе телеграм

    • @SergeiCalabonga
      @SergeiCalabonga 4 роки тому

      @@BashkaMen О! Спасибо! Урок будет очень полезен!

  • @НежныйСтрастный
    @НежныйСтрастный 4 роки тому

    можешь рассказать о том как скомпилировать приложение wpf чтобы его можно было установить на другой компьютер (как положить в этот установщик .нет фреймворк, как грамотно этот фреймворк установить и как вообще собрать проект) ???

    • @НежныйСтрастный
      @НежныйСтрастный 4 роки тому

      просто создать готовый сетап для установки на компьютере, на котором нет этого фреймворка, в инете информации по этому поводу дают очень мало и очень сложным, максимально нашпигованным терминами языком

    • @BashkaMen
      @BashkaMen  4 роки тому

      Изучу этот вопрос и возможно будет видео

    • @НежныйСтрастный
      @НежныйСтрастный 4 роки тому

      @@BashkaMen clickonce не панацея

  • @dimka59ru
    @dimka59ru 4 роки тому +1

    Что за цветовая тема?

    • @BashkaMen
      @BashkaMen  4 роки тому +1

      studiostyl.es/schemes/desertex-revised

    • @dimka59ru
      @dimka59ru 4 роки тому

      @@BashkaMen спасибо!

  • @SergeiCalabonga
    @SergeiCalabonga 4 роки тому

    А как запретить пользавателю уходить со страницы?

    • @BashkaMen
      @BashkaMen  4 роки тому

      Ну это должны решать Вы, к примеру отключив кнопку. Любая команда имеет свойство CanExecute

    • @SergeiCalabonga
      @SergeiCalabonga 4 роки тому

      @@BashkaMen это-то как раз понятно. Наверное, потому я неправильно спросил, что хотел спросить как выдать диалог на запрос подтверждения ухода со страницы?

  • @LiveChanel21
    @LiveChanel21 4 роки тому +4

    Ты сам учился C#?

    • @BashkaMen
      @BashkaMen  4 роки тому +1

      да

    • @LiveChanel21
      @LiveChanel21 4 роки тому +1

      @@BashkaMen книги или ютуб? Начал читать книгу Шилда Герберта С#. Можешь что-то посоветовать?

    • @BashkaMen
      @BashkaMen  4 роки тому

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

  • @nikitakravchenko6742
    @nikitakravchenko6742 4 роки тому +1

    Ты ещё десктоп не забросил?
    Не думаешь. На qt переходить?
    Сам сидел на wpf, как пару месяцев пересел на qt, он получше будет)

    • @BashkaMen
      @BashkaMen  4 роки тому

      Использую WPF когда нужно делать программки на десктоп :)
      QT не хочу там не C# :)

    • @nikitakravchenko6742
      @nikitakravchenko6742 4 роки тому

      @@BashkaMen Тоже так раньше думал)
      Мне все таки C++ ближе да и на Qt софт кросплатфооменный получается)
      Но признаю, что на wpf программы красивее, чем на Qt по Windows.

    • @semen083
      @semen083 4 роки тому

      @@nikitakravchenko6742 чем qt лучше чем wpf по собственным ощущениям?

    • @nikitakravchenko6742
      @nikitakravchenko6742 4 роки тому

      @@semen083 во первых это конечно кроссплатформенность, во вторых это c++), в третьих qt designer это классная штука)

    • @semen083
      @semen083 4 роки тому

      @@nikitakravchenko6742 mvvm в qt есть? А по скорости разработки и сложности qt дольше и сложнее?

  • @ragend2965
    @ragend2965 4 роки тому

    Чё по теме Memory Hacking?

  • @СмартБой
    @СмартБой 4 роки тому

    привіт Башкамен, дякую за те що ти повернувся, очікував на нове відео, але якщо буде вільний час, то прошу тебе записати ще одне відею стосовно того як праильно "привязувати" кнопку до конкретної функції в таких додатках як музичний плеєр АІМП або Скайп ! Тобто створюємо форму, а на формі кнопку"плей" і замість того щоб натискати кнопку"плей" на додатку, ми натискаємо його на формі і плеєр грає.
    П.С. Можливо це елементарно просто і не знати такого це просто сміх, але я надіюся на розуміння, бо поки що я новачок

    • @BashkaMen
      @BashkaMen  4 роки тому

      Видео на эту тему врядли запишу, но подскажу.
      Погугли как на C# имитировать нажатие клавиши, и при нажатии кнопки на твоей форме симулируй нажатие кнопки на клавиатуре (Play\Pause\Next...) а ОС уже перехватит и направит их в приложения которые ждут эти кнопки. Кнопки приложения ждут вешая хуки на клавиши. Тема не большая
      docs.microsoft.com/en-us/dotnet/framework/winforms/how-to-simulate-mouse-and-keyboard-events-in-code

    • @СмартБой
      @СмартБой 4 роки тому

      ​@@BashkaMen також я сподіваюсь, мені це допоможе при написанні трейнерів до відеоігор, дякую, буду шукати,

  • @epicdman5475
    @epicdman5475 4 роки тому

    Привет,а можешь сделать скрипт в AHK на ходьбу туда сюда в МТА
    $NumpadMult::
    Loop
    {
    sendinput, {vk57 down}
    sleep 10000
    sendinput, {vk57 up}
    sleep 5000
    sendinput, {vk53 down}
    sleep 10000
    sendinput, {vk53 up}
    }
    Return
    End::
    ExitApp
    Вот прототип.Ну или можешь сказать что не так?

    • @BashkaMen
      @BashkaMen  4 роки тому

      EPIC D'MAN не пишу АНК, вроде нормально ты сам написал

    • @epicdman5475
      @epicdman5475 4 роки тому

      @@BashkaMen У тебя же даже уроки были по AHK, Ну окей спасибо

    • @BashkaMen
      @BashkaMen  4 роки тому

      @@epicdman5475 5 лет назад?

    • @epicdman5475
      @epicdman5475 4 роки тому

      @@BashkaMen Да, но это же был

  • @StuiChannel
    @StuiChannel 4 роки тому +3

    чел сделай видос пж, как правильно разбить приложение на View, Model, Controller

    • @jva4kamail
      @jva4kamail 4 роки тому +1

      Ну это мне кажется даже не тема для видоса. Погугли про MVC, есть много статей

  • @АлексДронго-х3к
    @АлексДронго-х3к 3 роки тому

    Для начинающего очень сложно въехать. Если ты делаешь контент для узкой аудитории(для профи), тогда хотя бы напиши, что видео не для новичков. А вообще WPF тема интересная. Выпусти свой туториал по WPF (на подобие, как ХрисТ за С#), потому что в русскоязычном сегменте ни кто толком сделать этого не может. Если не ты, тогда наверное уже ни кто(.

    • @evgenystupin
      @evgenystupin Рік тому

      Посмотри контент на канале devtricks

  • @zopPes
    @zopPes 4 роки тому

    Как то плохо понял данный урок.
    Надо будет лучше углубиться в данную тему

    • @BashkaMen
      @BashkaMen  4 роки тому +1

      скачай исходники и поиграйся с ними

    • @zopPes
      @zopPes 4 роки тому

      @@BashkaMen
      мне в основном не до конца понятно:
      Как лучше структоризировать приложения
      ,Как заставить разные формы общяться друг с другом
      И корректное создание вьюмодел.
      Надеюсь больше практик
      И ваш отличный контент
      Поможет мне с этим разобраться

  • @Bont1860
    @Bont1860 Рік тому

    ничего не понял