2

.NET 4의 SetCurrentValue API와 동등한 SL4를 찾고 있는데, 이는 필자의 시나리오에 꼭 필요한 것으로 보입니다.Silverlight DependencyProperty.SetCurrentValue 동등한

요약하면 적절한 시점에 주어진 속성의 값을 업데이트하는 첨부 된 동작을 작성하고 있습니다. 그러나 해당 종속성 속성에 설정된 바인딩을 덮어 쓰지 않으려합니다. 그 값을 속성에 넣기 만하면됩니다. 따라서 해당 값을 기반으로 바인딩을 새로 고칩니다.

내가 말할 수있는 것부터 SL4에서 아직 쉽게이를 수행 할 수있는 방법이 없습니다.

감사합니다.

답변

2

Silverlight는이 수준의 종속성 값에 직접 액세스 할 수 없습니다. 그러나 스토리 보드의 애니메이션이 속성을 조작 할 때 설정하는이 가치 수준.

그러므로 DiscreteObjectKeyFrame이 포함 된 길이가 0 인 스토리 보드는 원하는 결과를 얻을 수 있습니다.

+1

그냥 시도해보고 놀랍습니다. 저는 애니메이션이기 때문에 놀랍습니다. 그래서 낮은 우선 순위가 문제를 일으킬 것이라고 생각했습니다. 코드가 적기 때문에 가능한 경우이 솔루션을 계속 사용합니다. 감사. –

1

나는 바인딩을 감지하고 소스와 타겟 사이에 대리 객체를 주입함으로써 내가 무엇을하고 있는지 시뮬레이션 해왔다. 그런 다음 대리모를 조작하고 원본 바인딩 새로 고침의 양면을 새로 고칠 수 있습니다.

내가 좋아하는 것보다 추악하고 많은 일이 있지만 작동하는 것 같습니다.

켄트

+1

솔루션 예제를 공유해 주시겠습니까? – jpierson

+0

@KentBoogaart 이걸 도와 드릴까요? Silverlight/WPF 크로스 플랫폼 코드에서 SetCurrentValue가 필요합니다. http://stackoverflow.com/questions/13181788/wpf-dependency-property-precedence-reference-type-default-values#comment17945942_13181788 –