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

Ste*_*son 1 c#

颜色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)

小智 5

像这样声明你的颜色:

private Color c = Color.Blue; // Set default color

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

    private void inkCanvas_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    {
        if (inkCanvas.EditingMode == InkCanvasEditingMode.None)
        {
            if(dtm == DrawingToolMode.ellipse)
            {
                Ellipse myEllipse = new Ellipse();
                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)