우리는 BitmapCache를 사용하는 사용자 정의 컨트롤이있는 WPF 페이지가 있습니다. 빈 요소 (데이터 바인딩)를 빈 경로 (새 경로())로 업데이트하여이 요소를 지우려고 할 때, 완전히 새로 고침/지워지지는 않습니다. 창 크기를 조금 변경하면 BitmapCache가 활성화 된 영역이 완전히 지워집니다.WPF의 BitmapCache가 완전히 지워지지 않았습니다.
BitmapCache를 사용하는 요소를 지우거나 새로 고치는 데 특별한 방법이 있습니까? 경로를 설정하는
<me:ScrollViewer
RenderedWaves="{Binding RenderedWaves}"
ItemTemplate="{DynamicResource DataTemplateForWaveItem}"
ItemsPanel="{DynamicResource ItemsPanelTemplateForWaveItems}"
CacheMode="BitmapCache" />
내가 그것을 고정 생각하지만, 모든 시간을 작동하지 ...
이 코드는 '아무튼 :
이
는 우리의 코드 BitmapCache를 즉시 업데이트하십시오.Protected WriteOnly Property SetGraph As Path
Set(value As Path)
If value Is Nothing Then value = GetEmptyPath()
_graph = value
OnPropertyChanged(New PropertyChangedEventArgs(PropertyNameGraph))
End Set
End Property
,210
그리고이 코드는 때때로을 업데이트합니다
Protected WriteOnly Property SetGraph As Path
Set(value As Path)
UIDispatcherLocator.UIDispatcher.Invoke(Sub()
If value Is Nothing Then value = GetEmptyPath()
_graph = value
End Sub, Threading.DispatcherPriority.Background)
OnPropertyChanged(New PropertyChangedEventArgs(PropertyNameGraph))
End Set
End Property
좀 더 알려 줄 수 있나요? 왜 그렇게 복잡한가요? –
내가 베팅을하는 사람이라면 vidya 카드 문제가 있다고 말할 수 있습니다. 당신은 최소한의 예를 제공 할 수 있습니까? – Will
코드 숨김에서 InvalidateVisual()을 호출하여 도움이되는지 확인할 수 있습니다. – ekholm