سلام خسته نباشید. میخوام یه حلقه while توی یک ترد بذارم و هنگ نکنه و توی همون ترد متن فرم رو تغییر بدم که با خطای cross مواجه نشم. ممنون.خیلی عجله دارم
Printable View
سلام خسته نباشید. میخوام یه حلقه while توی یک ترد بذارم و هنگ نکنه و توی همون ترد متن فرم رو تغییر بدم که با خطای cross مواجه نشم. ممنون.خیلی عجله دارم
اگر تغییراتی می خواهید در حلقه تکرار انجام دهید فقط مربوط به ظاهر برنامه است می توانید با استفاده از یک storyboard (همون انیمیشن) و binding مناسب کارتان را انجام دهید
در غیر اینصورت ساده ترین راه استفاده از کامپوننت BackgroundWorker هست
برای مثال:
private BackgroundWorker worker = new BackgroundWorker();
public MainPage()
{
InitializeComponent();
worker.DoWork += (s, e) =>
{
//your async code
//e.Result = ...
};
worker.RunWorkerCompleted += (s, e) =>
{
//var ret = e.Result
};
}
private void Button_Click(object sender, RoutedEventArgs e)
{
worker.RunWorkerAsync();
}
موفق باشید