小编May*_*nda的帖子

简化后台工作者的匿名方法

我试图通过按钮点击来创建我的所有代码,在后台工作程序中运行.所以我有以下代码模板.

BackgroundWorker backgroundWorker = new BackgroundWorker();
backgroundWorker.DoWork += delegate
{
    //code
};
backgroundWorker.RunWorkerAsync();
while (backgroundWorker.IsBusy)
{
    Application.DoEvents();
} 
Run Code Online (Sandbox Code Playgroud)

只是想知道是否有一种简化此代码的方法,所以我没有有效地为所有按钮复制相同的代码块.

编辑:我试图运行的典型代码是:

//Synchronous task
Wait(2000);
//Synchronous task
return taskResult ? "Success" : "Failure"
Run Code Online (Sandbox Code Playgroud)

c# delegates anonymous-function backgroundworker

2
推荐指数
1
解决办法
752
查看次数

在私人空隙之间传递颜色变量

颜色c = Colors.Red;

如何将上面的颜色变量从一个私有空格传递到另一个私有空白?在此先感谢斯蒂芬妮

private void btnRedClick(object sender, RoutedEventArgs e)
{
    Color c = Colors.Red;
}

private void inkCanvas_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
    if (inkCanvas.EditingMode == InkCanvasEditingMode.None)
    {
        if(dtm == DrawingToolMode.ellipse)
        {
            Ellipse myEllipse = new Ellipse();
            //Color c = Colors.Red;
            System.Windows.Media.SolidColorBrush scb =
            new SolidColorBrush(c);
            myEllipse.Stroke = (scb);
            myEllipse.Fill = (scb);
            Point p = Mouse.GetPosition(this.inkCanvas);
            InkCanvas.SetTop(myEllipse, p.Y);
            InkCanvas.SetLeft(myEllipse, p.X);
            myEllipse.Height = 20;
            myEllipse.Width = 20;
            inkCanvas.Children.Add(myEllipse);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c#

1
推荐指数
1
解决办法
123
查看次数