파일 탐색 대화 상자를 사용하여 사용자가 여러 이미지를 선택할 수 있습니다. 많은 이미지가 선택되면 예상대로 조금 걸립니다. 다음은 내가 선택한 이미지로 수행하는 작업의 예입니다. 나는 파일 경로를 통해 이미지를 반복하고 사용자 정의 컨트롤의 인스턴스를 만들고, 사용자 정의 컨트롤에는 Image 컨트롤과 몇 가지 다른 컨트롤이 있습니다. 이 컨트롤의 인스턴스를 만든 다음이를 관련 창 xaml 파일에 생성 된 기존 stackPanel에 추가합니다. 바로 아래의 예제는 잘 작동하지만, BackGroundWorker를 더 잘 이해하려고 노력하고 있습니다. 이벤트를 설정하고 진행률 막대를 업데이트 할 수있는 값을 전달하는 방법에 대한 기본 사항을 얻습니다.하지만 루프가 필요하기 때문에 아래의 가동 시간은 기존 stackPanel에 usercontrol 인스턴스를 추가합니다. 작동하지 않으며 다른 스레드에 있습니다. BackGroundWorker는 이와 같은 예를 위해 작동할만한 것이 있습니까? 그렇다면 스레드 외부에있는 ui (내 스택 패널)를 업데이트하는 가장 좋은 방법은 무엇입니까? 나는 상당히 새로운 wpf이고 BackGroundWorker를 사용한 적이 없는데, 단지 int 값으로 진행 상황을 업데이트하는 것 뿐이므로이 질문이 의미가 있기를 바란다. 어떤 생각을 해줘서 고마워.wpf BackgroundWorker - UI 업데이트 관련
내가 지금하고있는 일의 예. 제대로 작동합니다. 당신은 어떻게 감각이 이제
public static class extensionRefresh {
private static Action EmptyDelegate = delegate() { };
public static void Refresh(this UIElement uiElement) {
uiElement.Dispatcher.Invoke(DispatcherPriority.Background, EmptyDelegate);
}
}