2016-03-23 11 views
1

カラーc =色。赤;プライベートボイド間でカラー変数を渡す

上記の変数を1つの非公開ボイドから別のプライベートボイドに渡すにはどうすればよいですか?事前に おかげ ステファニー

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); 
     } 
    } 
} 
+2

クラスメンバー変数を作成しますか? – Toumash

答えて

2

ストアを:

private Color _color; 

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

} 

private void inkCanvas_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) 
{ 
    Color myLocalColor = _color; 
} 

は、私はあなたががプログラミング101上に読むことをお勧め。これは非常に基本的な質問です。

+0

そうではありません。私たちは同時に投稿しました。同時実行性の問題;) –

+0

ありがとうWicherはそれを働かせた –

+0

素晴らしい!私の答えを受け入れてください。がんばろう :) –

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); 
      } 
     } 

    } 
関連する問題