그래서 나는 사용자가 선택 이미지를 표시하는 작은 상자 인 <Image>
개체를 가지고 있습니다.BitmapImage에 대해 CacheOption.OnLoad를 사용하면 이미지 그림을 새로 고치는 방법 WPF C#
자주 변경 될 수 있으므로 BitmapCacheOption.OnLoad를 사용해야하므로 메모리에로드되고 이전에 문제가 처리 된 파일이 사용되지 않습니다.
하지만 그런 파일을 변경하면이 이미지 콘텐츠를 새로 고치는 데 문제가 있습니다.
누구나 내가이 상황을 어떻게 관리 할 수 있는지 힌트를 줄 수 있습니다. 내가 비트 맵의 파일을 변경 할 수있는 동안 사용자가 새로운 이미지를 선택하면 (새 사진을 표시) 내 이미지를 다시하고 싶은
... changing file at pathToFileDestination
BitmapImage imageBitmap = new BitmapImage();
imageBitmap.BeginInit();
imageBitmap.CacheOption = BitmapCacheOption.OnLoad;
imageBitmap.UriSource = new Uri(pathToFileDestination, UriKind.Absolute);
imageBitmap.EndInit();
positionPicture.Source = null;
positionPicture.Source = imageBitmap;
((PositionManagerWindow)this.Owner).positionPicture_image.Source = null;
((PositionManagerWindow)this.Owner).positionPicture_image.Source = imageBitmap;
: 내가 사용 후 코드를 아래와 같이 새로운 이미지를 선택합니다.
내가 무슨 뜻인지 이해해 주시겠습니까? 질문하지 않으면 명확하지 않은 것을 지정하십시오.
당신의 pathToFileDestination? 디버그 폴더 또는 당신이 만든 모든 폴더에 있습니까? –
Uri 대신 FileStream을 사용하는 것이 좋은 힌트 일 수 있지만 Dispatcher (Invoker 아님)를 사용해야한다는 것은 아무런 징후가 없습니다. 그것 없이는 더 나은 대답이 될 것입니다. – Clemens
@ J.Hasan 나는 둘 다 문제없이 사용하려고했습니다. –