1) 함수를 하나 생성한다
public void UpdateWindow()
{
// 화면 객체의 변경사항을 즉시 업데이트한다
System.Windows.Threading.Dispatcher.CurrentDispatcher.Invoke(
System.Windows.Threading.DispatcherPriority.Background,
new System.Threading.ThreadStart(delegate { }));
}
2) 프로그램상에서 필요할 때 호출한다
<참조1>
lcCollect.Items.Insert(0, "'WebCache' 문자열이 포함된 프로세스 표시");
UpdateWindow();
<참조2>
CrawlDll.ProcessControl(ref ps);
if (ps.nErrorCode != 0)
MessageBox.Show(ps.nErrorCode.ToString() + ps.szMag);
<설명>
lcCollect 는 WPF의 ItemsControl 컨트롤이다
<참조1> 에서 UpdateWindow(); 함수를 호출하지 않고 <참조2>를 실행하면
UpdateWindow() 함수는 내부적으로 별도의 쓰레드를 생성해서 화면갱신처리를 내부적으로 한 후 리턴된다
추가사항.
lcCollect 가 포함된 xaml 소스를 아래에 추가하니 참조한다
----- 아 래 ----------
<Grid Grid.Row="2" Margin="5">
<Rectangle Stroke="Black">
</Rectangle>
<ScrollViewer VerticalScrollBarVisibility="Auto">
<ItemsControl Name="lcSummary"/>
</ScrollViewer>
</Grid>
'WPF 개발 ( C# )' 카테고리의 다른 글
WPF ( C#) 에서 VC++ 로 만든 DLL 호출하기 (0) | 2018.12.05 |
---|---|
WPF 타이틀바가 없는 윈도우창을 마우스로 끌고 다니기 (MFC의 HITTEST 사용 처럼) (1) | 2018.12.05 |