|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Shocker.Proвроде бы нетА "перехватывать" назначение привязки? Чтобы назначать с нужным режимом? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2019, 11:35 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Eld HaspShocker.Proвроде бы нетА "перехватывать" назначение привязки? Чтобы назначать с нужным режимом?Все расширенные настройки для свойства зависимости назначаются через FrameworkPropertyMetadata - посмотри, что в нем вообще есть в конструкторах и свойствах ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2019, 11:56 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Eld Hasp Код: xml 1. 2.
Всё-таки ужасный паттерн, и жаль читателей твоего блога, которые попытаются взять его на вооружение. По большому счету тут должна быть просто CalculatorVM, шаблон для него и ContentPresenter и никаких юзерконтролов ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2019, 12:06 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Shocker.ProEld Hasp Код: xml 1. 2.
Всё-таки ужасный паттерн, и жаль читателей твоего блога, которые попытаются взять его на вооружение. По большому счету тут должна быть просто CalculatorVM, шаблон для него и ContentPresenter и никаких юзерконтролов Ну, такая же привязка (Mode=OneWayToSource) очень редко используется. Тем более "прокидывание" связи от вложенной VM в основную VM через UC. Это больше демонстрация возможности. Основное использование это таким образом. Код: xml 1. 2. 3. 4. 5. 6. 7.
Просто когда делаешь пример, хочется учесть и различные другие способы использования, пусть и не совсем стандартные. Почему именно через UC, а не шаблон? Вопросов в разделе, где будет тема, больше именно по использованию UC. Для себя лично, я по-моему, ещё ни разу не использовал UC в своих реальных решения. Изначально взял ориентир на максимальное использование шаблонов и стилей (в том числе и чтобы их лучше изучить) и пока их возможностей хватает. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2019, 12:43 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Shocker.ProEld Haspпропущено... А "перехватывать" назначение привязки? Чтобы назначать с нужным режимом?Все расширенные настройки для свойства зависимости назначаются через FrameworkPropertyMetadata - посмотри, что в нем вообще есть в конструкторах и свойствахСмотрел в первую очередь. Есть различные обратные вызовы при изменении значения. Но ни каких при установки привязки. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2019, 12:50 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
UserControl'ы не использую в 99% случаев Для создания элементов управления использую наследование от Control'а А для вёрстки использую DataTemplate'ы Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 11:20 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Роман, а в каком случае (1%) ты используешь Юзерконтролы? Твой вариант меня лично смущает только одним - дефолтный шаблон не инкапсулирован с самим контролом - соответственно его сложнее таскать между проектами ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 11:31 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Shocker.Pro, ну в реальной жизни, он бы хранился в Generic.xaml, это же пример на счет 1% даже не знаю, я просто не максималист, по этому если 100% использую, то буду считать, что это 99% :D ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 11:46 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Roman Mejtesну в реальной жизни, он бы хранился в Generic.xaml, это же примерну так все равно при выносе в либу или в другой проект пришлось бы перетаскивать и назначение шаблона ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 12:09 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Shocker.ProRoman Mejtesну в реальной жизни, он бы хранился в Generic.xaml, это же примерну так все равно при выносе в либу или в другой проект пришлось бы перетаскивать и назначение шаблона нет, почему? в Generic.xaml есть стиль, по умолчанию, он будет подключаться и в нём задан шаблон по умолчанию. Если всё это сделать в отдельной сборке, никаких манипуляций не нужно, подключаете сборку и используете, всё просто и удобно. Так как это дефолтный стиль, то переопределенный стиля будет автоматически унаследован от него. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 12:18 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Roman MejtesUserControl'ы не использую в 99% случаев Для создания элементов управления использую наследование от Control'а А для вёрстки использую DataTemplate'ы Да, согласен. Я уже писал Shocker.Pro, что сам я так не делаю, но пытаюсь разъяснит начинающим (ещё более чем я) различные способы использования UC. Так как различные вопросы про взаимодействие с UC очень часты. Roman Mejtes, может Вы внесёте ясность как правильно сделать DP свойство только для чтения, но с возможностью сделать в нём привязку (Mode=OneWayToSource)? Или такое в принципе невозможно? Просто иногда сталкиваешься в конструкторе с тем что выбор различных режимов (Mode) для привязки ограничен. Можно ли явно такое ограничение прописывать? Или при выборе любого режима устанавливать всё равно только допустимый? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 14:44 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
То, что вы хотите сделать невозможно. Невозможно создать связывание со свойством зависимости только для чтения Вот ответ, на ваш вопрос: https://referencesource.microsoft.com/#PresentationFramework/src/Framework/System/Windows/Data/BindingExpression.cs,8f8a18ec6ff7f298 Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
По умолчанию задать для свойства зависимости OneWayToSource невозможно, только TwoWay. Свойства зависимости только для чтения нужны не для связывания, а для триггеров, анимации, менеджера состояний и прочих плюшек представления. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 15:44 |
|
Привязка DP-свойства UserControl к вложенному элементу
|
|||
---|---|---|---|
#18+
Roman MejtesСвойства зависимости только для чтения нужны не для связывания, а для триггеров, анимации, менеджера состояний и прочих плюшек представления. Я так и понял. Но думал может есть какие обходные, нестандартные способы. Мне пришлось сделать обычное свойство и программно контролировать чтобы извне оно не менялось. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2019, 16:11 |
|
|
start [/forum/topic.php?fid=21&msg=39801366&tid=1440340]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 141ms |
0 / 0 |