Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
МСУ, Ну дык если пошла борьба с инструментом - чего ждать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2010, 20:33 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
I've WPFНезаменимых у нас нет. Создаем свойство IsInitialized. Инициализацию делаем только, если значение этого свойства = false, после инициализации переводим его в true. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 06:08 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
ИзопропилНу дык если пошла борьба с инструментом - чего ждать? Будем плодить Magic Pattern'ы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 10:37 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Алексей КI\'ve WPFНезаменимых у нас нет. Создаем свойство IsInitialized. Инициализацию делаем только, если значение этого свойства = false, после инициализации переводим его в true. Код: plaintext 1. 2. 3. 4. 5. 6. IsInitialized - вариант для ViewModel.Где и для чего нужны практальные методы с контролами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 13:15 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
i've wpfГде и для чего нужны практальные методы с контролами?Мало ли чего... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 14:46 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
кхе... WPF, MVVM, стандартная вьюмодель с INotifyPropertyChanged, с примитивными (условно говоря - String) и коллекционными (List<String>) пропертями, обычная вьюха с текстбоксами и комбобоксами, текстбоксы вьюхи прибиндены к примитивным пропертям вьюмодели, SelectedValue вьюхи прибиндены к примитивным пропертям вьюмодели, ItemSource комбобоксов прибиндены к коллекционным пропертям вьюмодели. Всё стандартно вроде бы. И вроде всё работает как надо. Но. Как только делаю view.DataContext = null, так тут же зачем-то получаю обнуление (установку в null) свойств вьюмодели, но не всех, а только тех, к которым прибиндены SelectedValue у комбобоксов (бинды текстбоксов, итемсорсов и команд не затрагиваются) Внимание, вопрос - я делаю что-то не так, или же я ненавижу WPF? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2010, 21:21 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
ЛПкхе... WPF, MVVM, стандартная вьюмодель с INotifyPropertyChanged, с примитивными (условно говоря - String) и коллекционными (List<String>) пропертями, обычная вьюха с текстбоксами и комбобоксами, текстбоксы вьюхи прибиндены к примитивным пропертям вьюмодели, SelectedValue вьюхи прибиндены к примитивным пропертям вьюмодели, ItemSource комбобоксов прибиндены к коллекционным пропертям вьюмодели. Всё стандартно вроде бы. И вроде всё работает как надо. Но. Как только делаю view.DataContext = null, так тут же зачем-то получаю обнуление (установку в null) свойств вьюмодели, но не всех, а только тех, к которым прибиндены SelectedValue у комбобоксов (бинды текстбоксов, итемсорсов и команд не затрагиваются) Внимание, вопрос - я делаю что-то не так, или же я ненавижу WPF?Баян. Там же чуть ниже небольшой срач по этой проблеме и одно из её решений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2010, 06:07 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Алексей К... и одно из её решений.Впрочем, не самое удачное. Нынче модно через attached property... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2010, 13:37 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Впрочем, если я ничего не путаю - "это" в WPF 4 исправлено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2010, 13:53 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Алексей КБаян. Там же чуть ниже небольшой срач по этой проблеме и одно из её решений. Не то. Я же не трогаю ItemsSource Я никакие пропертя вьюмодели не трогаю. Я вообще не трогаю вьюмодель. Я трогаю вьюху, но даже у вьюхи я не затрагиваю биндинги, просто отцепляю её от вьюмодели. И при этом отцеплении идёт обнуление свойств вьюмодели, причём не всех. т.е. код такой: View.xaml Код: plaintext ViewModel.cs Код: plaintext Window1.xaml Код: plaintext Window1.xaml.cs Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2010, 14:30 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
ЛПАлексей КБаян. Там же чуть ниже небольшой срач по этой проблеме и одно из её решений. Не то. Я же не трогаю ItemsSource Я никакие пропертя вьюмодели не трогаю. Я вообще не трогаю вьюмодель. Я трогаю вьюху, но даже у вьюхи я не затрагиваю биндинги, просто отцепляю её от вьюмодели. И при этом отцеплении идёт обнуление свойств вьюмодели, причём не всех. т.е. код такой: View.xaml + Код: plaintext ViewModel.cs + Код: plaintext Window1.xaml + Код: plaintext Window1.xaml.cs + Код: plaintext Не пробовал читать документацию прежде, чем забивать головой гвозди? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2010, 19:27 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
i've wpfНе пробовал читать документацию прежде, чем забивать головой гвозди? Нет конечно, я ж не читатель По теме сказать есть чего? Если нет, то и до свидания, не кашляй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2010, 21:10 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Могу и по теме.Прежде, чем смешить на форуме: 1. Прочитай хотя бы один букварь.Подозреваю, что одного раза будет мало, читай до дыр. 2. Затем выучи матчасть с контролами(у селекторов есть одно замечательное свойство,которое обуславливает подобное поведение) 3. Не мучай свою задницу изобретением "паттернов" button click, попробуй напрячь свои мозги, чтобы осилить хотя бы один готовый framework. Тогда подобного бреда и стонов не будет. ЗЫ Тебе тоже не болеть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2010, 21:33 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
i've wpf <высерки мозга поскипаны> ... у селекторов есть одно замечательное свойство,которое обуславливает подобное поведение ... <высерки мозга поскипаны> То есть ты утверждаешь, что такое поведение - это нормально, и обуславливается заданием какого-то свойства? Очень хорошо, это именно то, о чём я спрашивал, когда задавал вопрос "что я делаю не так". Ну а теперь - ты уж не строй из себя красну девицу, не стесняйся, скажи, как это свойство называется. А я уж сумею найти, во что его установить. И ежели оно сработает в FW 3.5, то у меня тут же возникнет вопрос, почему оно не работает в FW 4.0 (ибо подобное поведение, хоть по твоим словам и обусловлено каким-то свойством и является нормальным, однако же не наблюдается в 4.0). Неужто злые майкрософтовцы исправили правильное поведение на неправильное? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 03:16 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
ЛПНе то. Я же не трогаю ItemsSource Я никакие пропертя вьюмодели не трогаю. Я вообще не трогаю вьюмодель. Я трогаю вьюху, но даже у вьюхи я не затрагиваю биндинги, просто отцепляю её от вьюмодели. И при этом отцеплении идёт обнуление свойств вьюмодели, причём не всех.Ну у тебя датабиндинг привязан к свойству ItemsSource и ты меняешь DataContext. Впрочем, может я и ошибаюсь, просто предположил. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 06:24 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Алексей КНу у тебя датабиндинг привязан к свойству ItemsSource и ты меняешь DataContext. Впрочем, может я и ошибаюсь, просто предположил. :-) Да не ошибаешься, правильно предположил. Действительно, привязка к ItemsSource. Действительно, меняю датаконтекст. Но ItemsSource то я не меняю, поэтому твой тынц - это всё-таки "не то". Понятно, что ноги из одного и того же места растут. При смене датаконтекста меняется (обнуляется) итемссорс, при смене итемссорса сбрасывается селектедайтем (уж так комбобокс уроды реализовали). Но почему, блин, нельзя было внутрях вьюхи сначала отцепить датаконтекст, а уже потом обнулять комбобоксовый итемссорс, пусть даже с последующим (обусловленным реализацией комбобокса) обнулением селектедайтема? Кривая реализация комбобокса так бы и осталась, куда б она делась, но эта комбобоксовая кривость хотя бы не проваливалась на уровень уже отцепленной вьюмодели. А так - на одно говно наложилось другое, в итоге говно в квадрате. Сидорасы, одним словом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 06:41 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
i've wpfМогу и по теме.Ну расскажи чё делать-то? Сабж ProblemIf you have an implicit Style that uses BaseOn that is located in App.xaml or in a Merged Resource Dictionary that is merged in App.xaml, the WPF & Silverlight Designer will always be in a read-only error state. Gold Bar Error: InstanceBuilderException was thrown due to a document error: a loop was detected in the property expressions Error List Error: A loop was detected in the property expressions ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 06:58 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Ну вот зачем такое приходится писать? Ненужный код Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 08:55 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Алексей КНу вот зачем такое приходится писать? + Ненужный код Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. Код выдернут из контекста и не понятно, где и когда он вызывается. Но однозначно можно сказать, что знанием матчасти также отсутствует. Необходимо вызывать Application.LoadComponent("Требуемый UriPack") перед InitializeComponent(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 12:29 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
I've WPFКод выдернут из контекста и не понятноКонтекст описан чуть выше. I've WPFгде и когда он вызывается.При старте приложения. В например Application.OnStartup. I've WPFНо однозначно можно сказать, что знанием матчасти также отсутствует.Ну к тебе и обратились за помощью. I've WPFНеобходимо вызывать Application.LoadComponent("Требуемый UriPack") перед InitializeComponent().Какая нах разница? Причём тут InitializeComponent? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 12:48 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
ЛПАлексей КНу у тебя датабиндинг привязан к свойству ItemsSource и ты меняешь DataContext. Впрочем, может я и ошибаюсь, просто предположил. :-) Да не ошибаешься, правильно предположил. Действительно, привязка к ItemsSource. Действительно, меняю датаконтекст. Но ItemsSource то я не меняю, поэтому твой тынц - это всё-таки "не то". Понятно, что ноги из одного и того же места растут. При смене датаконтекста меняется (обнуляется) итемссорс, при смене итемссорса сбрасывается селектедайтем (уж так комбобокс уроды реализовали). Но почему, блин, нельзя было внутрях вьюхи сначала отцепить датаконтекст, а уже потом обнулять комбобоксовый итемссорс, пусть даже с последующим (обусловленным реализацией комбобокса) обнулением селектедайтема? Кривая реализация комбобокса так бы и осталась, куда б она делась, но эта комбобоксовая кривость хотя бы не проваливалась на уровень уже отцепленной вьюмодели. А так - на одно говно наложилось другое, в итоге говно в квадрате. Сидорасы, одним словом. Если данные должны синхронизироваться в два конца, то что должно произойти, когда на одном они обнуляются? WPF нервно относится к нулевому datacontext, нигде я не видел подобного. Если тебе это нужно, то твоя нелучшая реализация(в так горячо вами обсуждаемом Prism, это делается без кода во view) самого дубого варианта - View First сделана криво. В pwf 4.0 движок переделан, исправлены косяки, посему квадраты и проявляются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 13:02 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
Алексей ККакая нах разница? Причём тут InitializeComponent? Сначала инициализируем контролы, а потом пытаемся им втолковать, как они должны смотреться?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 13:22 |
|
||
|
Топик ненависти к WPF
|
|||
|---|---|---|---|
|
#18+
I've WPFАлексей ККакая нах разница? Причём тут InitializeComponent? Сначала инициализируем контролы, а потом пытаемся им втолковать, как они должны смотреться?!Ну посмотри уже постановку задачи. Речь идёт о присоединении скина через Application.Resources и о наследовании "дефолтных" стилей для типа и о неадекватном (наверное) поведении дизайнера. В рантайме это работает, а дизайнер от этого гибнет. Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2010, 13:28 |
|
||
|
|

start [/forum/topic.php?fid=21&msg=36700512&tid=1442748]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 171ms |

| 0 / 0 |
