C#でボタンクリック時の引数渡し
引数をボタンを押下した後に使いたいのですが
デバグすると0になってしまいます。
C#初心者なのでめちゃくちゃなコードかもしれませんが
ご教授お願いいたします。
該当のソースコード
C#
1namespace _2019WpfApp 2{ 3 /// <summary> 4 /// Page4.xaml の相互作用ロジック 5 /// </summary> 6 public partial class Page4 : Page 7 { 8 public int pa { set; get; } 9 public Page4() 10 { 11 InitializeComponent(); 12~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~中略~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 13private void btnNavigateWithUri3_1_Click(object sender, RoutedEventArgs e) 14 { 15 pa = 1; 16 var win = new PassWindow(pa); 17 win.ShowDialog(); 18 19 if (!win.IsCancel) 20 { 21 // データ再検索 22 DataDisplay(); 23 } 24 }
C#
1namespace _2019WpfApp 2{ 3 /// <summary> 4 /// PassWindow.xaml の相互作用ロジック 5 /// </summary> 6 public partial class PassWindow : Window 7 { 8 public Boolean IsCancel { set; get; } 9 public int pa { set; get; } 10 11 public PassWindow(int pa) 12 { 13 InitializeComponent(); 14 15 } 16 17 18 19 public void btn_ok_Click(object sender, RoutedEventArgs e) 20 { 21 if (pass_box.Password == "a") 22 { 23 this.Close(); 24 if (pa == 1) 25 { 26 var win = new SubWindow_Page4_(); 27 win.ShowDialog(); 28 29 } 30 else if (pa == 2) 31 { 32 var win = new SubWindow_Page4_2_(); 33 win.ShowDialog(); 34 } 35 else if (pa == 3) 36 { 37 var win = new SubWindow_Page5_(); 38 win.ShowDialog(); 39 } 40 41 } 42 else 43 { 44 statusText.Text = "Password is incorrect."; 45 } 46 47 }
あなたのいう引数とはコード中のなににあたるのでしょうか
つたない文章で申し訳ありません
paを引数として考えております。
```C#
pa = 1;
var win = new PassWindow(pa);
```
のPage4にあるpaを
```C#
public void btn_ok_Click(object sender, RoutedEventArgs e)
{
if (pass_box.Password == "a")
{
this.Close();
if (pa == 1)
{
var win = new SubWindow_Page4_();
win.ShowDialog();
```
PassWindow内のボタンクリック時にif文として用いたいと考えております。
質問内容は C# のようですので、タグを C から C# へ変更してください。
ありがとうございます。
修正いたしました。
解決したのなら解決済みにしてください。
回答2件
あなたの回答
tips
プレビュー