2017-07-19 2 views
0

メッセージボックスにこれを受信すると、MetroFrameworkを使用してメッセージボックスを表示しようとしていますが、このエラーが表示されます(CS1503 )。'CodingStandardsImprovement.MainProgram.MainConversion'から 'System.Windows.Forms.IWin32Window'に変換できません

  while (true) 
      { 

       try 
       { 
        Var.borrowAmountNumber = int.Parse(borrowAmount); 
        Var.loanLengthNumber = int.Parse(loanLength); 
        Var.interestRateNumber = float.Parse(interestRate); 
        Var.i = true; 
        break; 
       } 
       catch (Exception) 
       { 
        MetroMessageBox.Show(this, "Please enter a integer.","Error", MessageBoxButtons.OK, MessageBoxIcon.Warning,100); 

        break; 
       } 
      } 
+0

アプリケーションはWPFですか? MetroFrameworkはWinForms用です。 'WPF!= WinForms'。 'MainCoversion'がフォームではないので、これはうまくいきません。したがって、エラーです。代わりにnullを渡します。 – TyCobb

+0

アプリケーションはWinForms上にありますが、このための修正は、これをメッセージボックスの最初に 'this'の代わりに' Form.ActiveForm' – wila

答えて

0

修正:

置き換えます MetroMessageBox.Show(this, "Please enter a integer.","Error", MessageBoxButtons.OK, MessageBoxIcon.Warning,100);

を付: MetroMessageBox.Show(Form.ActiveForm, "Please enter a integer.","Error", MessageBoxButtons.OK, MessageBoxIcon.Warning,100);

これは、問題を修正します。

関連する問題