WPF 브라우저 응용 프로그램에서 작업 중입니다. 페이지로드가 완료되고 구성 요소가 무거운 배경 서비스로드를 시작할 때 표시되는 방법을 이해할 수 있는지 알고 싶습니다. 그렇지 않으면 모든 서비스가로드 될 때까지 몇 초 동안 흰색 페이지가 표시됩니다.이 문제를 해결하기위한 권장 사항은 무엇입니까?WPF 창이나 페이지가로드를 제어하는 시점을 이해할 수 있습니까?
public Page1()
{
InitializeComponent();
}
private void Page_Loaded_1(object sender, RoutedEventArgs e)
{
// Just some heavy process in the begining
int j = 1;
for (int i = 0; i < 10000000; i++)
{
for (int k = 0; k < 1000; k++)
j=j * 2;
}
MessageBox.Show("ready");
}
그러나, 페이지 구성 요소가 PAGE_LOADED의 프로세스가 완료 전까지 페이지에로드되지 않은 : 여기
내가 시도했던 것입니다. page_loaded에 무거운 프로세스가 없어도 모든 것이 매우 빠르게로드되므로 UI에는 아무런 문제가 없습니다.업데이트 : 페이지 또는 창에로드 된 이벤트에서 이해할 수있는 점은 페이지 또는 창이로드되면 가져오고 페이지의 구성 요소와 컨트롤을로드해도 스타일이 적용됩니다. ... 그리고 컨트롤의로드가 완료되었음을 보여주는 이벤트를 찾지 못했습니다 ...
UPDATE2 : 내 문제에 대한 더 나은 해결책은 BackgroundWorker 또는 Dispatcher를 사용하여 무거운 프로세스를 실행하는 것입니다. 배경. 우편 번호 this에서 논의 된 바와 같이.
'Window','Page' 또는'UserControl'의'Loaded' 이벤트를들을 수 있습니다. – Guillaume
Guillaume aswer로 의견을 게시하십시오 ... –
@YoupTube, 튜더가 나 한테 해줬 어! – Guillaume