나는 텍스트 상자 2 초 기다렸다가 업데이트하려면이 간단한 프로그램을 작성했습니다잠 UI
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WpfApplication1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void button1_Click(object sender, RoutedEventArgs e)
{
for (int i = 0; i < 10; i++)
{
doSomething(i);
}
}
public void doSomething(int i)
{
System.Threading.Thread.Sleep(2000);
textBox1.Text += "this is the " + i + "th line\n";
}
}
}
을하지만 난 그것을 실행할 때 UI 일시 정지 나는 UI와 아무것도 할 수 없습니다 . 그것은 동적이 아니며 textbox1에 표시되어야하는 모든 텍스트는 실행이 끝날 때 표시됩니다.
대신 System.Threading.Thread.Sleep 대신 사용할 수있는 대안이 있습니까?
는 다른 스레드 수면을 가지고 있고,이 액션을 수행 할 때. – gunr2171
타이머 사용. 절대로 주 스레드에서 절전(). –