WinRT 프로젝트에서 WriteableBitmapEx를 사용하고 있습니다. 사용자 그림 라이브러리에서 WriteableBitmap에 이미지를로드합니다. 그러나 그 이미지에 즉시 쓸 수는 없습니다. 이미지 자체로 덮어 쓰게됩니다. (이미지를 비동기 적으로로드 한 다음 그 위에 내 그림을 덮어 쓰는 것처럼 보입니다.) 나는 그것을하지 못하게하는 방법을 모른다. (나는 SetSource에서 Await을 사용해 보았지만 Async 메서드는 아니다.)WinRT에서 이미지를로드 한 다음 이미지를로드하기 전에 이미지를로드하는 데 필요한만큼 기다리는 방법은 무엇입니까?
나는 "Await Task.Delay (1000)"을 사용했는데 작동하지만 1000ms가 충분하지 않을 수도 있기 때문에 해킹이되는 것처럼 보입니다. 진행하기 전에 비트 맵이로드 될 때까지 기다려주세요. .
누구나 내가 뭘 잘못하고있는 것 같아 보이거나 처리를하기 전에 WriteableBitmap이 그림 라이브러리에서로드되도록 할 수 있습니까? 여기에 내가 만든 예제 코드는 다음과 같습니다
Dim file = Await picker.PickSingleFileAsync
If file Is Nothing Then
Exit Sub
End If
Dim wbm As New WriteableBitmap(1, 1)
wbm.SetSource(Await file.OpenAsync(Windows.Storage.FileAccessMode.Read))
' If I don't have this, the DrawLine will not show up, if I do, it will.
Await Task.Delay(1000)
wbm.DrawLine(1, 1, 255, 255, Colors.Green)
wbm.Invalidate()
ImageMain.Source = wbm
이 프로젝트를 사용하고 있습니까? http://writeablebitmapex.codeplex.com/ –
내 WinRT 버전이라고 생각합니다. http://bit.ly/WriteableBitmapExWinRT –
필립 (Filip)의 WinRT 포트를 사용하고 있습니다. 제도법. Btw, Filip에게 감사드립니다. :)이 모든 것을 배우고 나면 소스 코드를 게시 할 것입니다. –