2017-08-28 8 views
1

テキストボックス値がnullのときにエラーがスローされるため、値がnullかどうかを確認するために3項ステートメントを作成しようとしていました。これは私がアップカムものです:DrawTextValuePairを使用したTernaryステートメント

DrawTextValuePair(e, string.IsNullOrEmpty(m_pcl.pn.Text) ? String.Format("Input: ", m_pcl.pn.Text) : String.Format("Input: "), true, m_leftMargin); 

しかし、このような使用に私はのコンパイルエラーを取得:

必要な仮パラメータに対応して与えられた引数はありません「iLeftMargin」ProfileDocument」はこの例では三元の文を利用するための適切な方法だろう何.DrawTextValuePair(PrintPageEventArgs、文字列、文字列、ブール値、INT「)

答えて

2

方法は

ProfileDocument.DrawTextValuePair(PrintPageEventArgs, string, string, bool, int) 

5つの引数を期待していますが、わずか4とそれを提供:

DrawTextValuePair(
    e, // 1st 
    string.IsNullOrEmpty(m_pcl.pn.Text) ? String.Format("Input: ", m_pcl.pn.Text) : String.Format("Input: "), // 2nd 
    true, // 3rd 
    m_leftMargin // 4th 
); 
+0

ほら、これは何も、単に引数の間違った番号を提供し、私の三元の文が間違っていません! –

+0

@YohanGreenburgまさに!だからこそエラーメッセージが伝えます。 :p – Dmitry

+0

@ドミトリー犯罪はありませんが、コードを簡略化することができます。 2番目の文字列形式は冗長です。私たちは良い習慣を守ってはいけませんか、時々どこでもそれを保つよりも、文字列エイリアスを使用するべきですか?私は文字列のことは、標準をコーディングするだけのメザーですが、それでもまだ知っています...? – krzysztofla

関連する問題