C#でWPFアプリケーションを構築する 5つのチェックボックスがあり、1つ以上選択されている場合は、itステートメントの引数を動的に変更します。 たとえば、月、火、水、木は&金曜日のチェックボックスがあります。 ユーザーがMon、Wed、& Friを選択した場合、それを反映するためにifステートメントの引数が必要です。 私は数多くの異なるif文を作りたくありません。 は、ここで私が書いたサンプルですが、これは単にあなたが希望としてばかな質問Arugmentの場合
答えて
されていない場合は、if文は明らかに
string passArg = "";
if(check_mon.IsChecked == true)
{
passArg = "passArg == \"Mon\"";
}
if(passArg)
{
MessageBox.Show("RAN");
}
申し訳ありませんが間違っています。 はコードを動的に生成できますが、この場合は過剰です。必要なのは次のとおりです。
bool isChecked = false;
if(check_mon.IsChecked && passArg == "Mon")
{
isChecked = true;
}
...
if(isChecked)
{
MessageBox.Show("RAN");
}
私は、多くの場合は別の文を作成する必要はありません。
さて、あなたは、ループ内のチェックボックスを入れTag
他のいくつかのプロパティまたはを設定し、そのpasArg
と比較けど、は、最初に焦点を当てる作品最も簡単な溶液で行く傾向がある可能性がありそれをより良くとする。 7 if
文がうまく動作するようになると、賢明な解決法(後で理解できないことがあります)を思いつくために、より多くの時間を費やすことがあります。
しかし、私は5日間の異なる日を持っています。ユーザーは任意のコンボを選択できます。これは、すべての単一のコンボを予測するために数多くの異なるif文を必要とします。 –
@DhavalDesaiあなたの例は、 'passArg'で1日しか表示されません。あなたが何日かの組み合わせと比較する必要がある場合は、その場合に 'passArg'が何であるかを示します。いずれの場合でも、別々の 'if'ステートメントで「すべての組み合わせ」をチェックする必要はありません。 –
あなたは、リスト内の値をチェックすることができます:チェックボックスがChecked
またはUnchecked
であり、この方法では、あなたが自分のものを設定したり、設定を解除することができたときに
List<string> checked = new List<string>()
if (check_mon.IsChecked)
{
checked.Add("Mon");
}
if (checked.Contains(passArg))
{
MessageBox.Show("RAN");
}
あなたは、イベントを発生することができます。あなたのXAML形式の例
:その後、
<CheckBox Checked="Checked" Unchecked="UnChecked"/>
とイベントを作成します。
private void UnChecked(object sender, RoutedEventArgs e) {
//Checked, enable, disable or do whatever you want
}
private void Checked(object sender, RoutedEventArgs e) {
//Checked, enable, disable or do whatever you want
}
- 1. arugmentで.cshrcファイルにsourceコマンドを挿入する方法
- 2. フォーマットヘルプJavascriptの場合.clickの場合値
- 3. の場合、$ GETの場合は
- 4. 照合Modern_Spanish_CI_AI(SQL Serverの場合)からUTF-8(MySQLの場合)
- 5. ブロッククリックイベントの場合
- 6. ループオーバーライドアニメーションの場合
- 7. -initWithContentsOfFile:NSMutableArrayの場合
- 8. ループアンドロイドウィジェットの場合
- 9. この場合
- 10. NoClassFoundException:ByteOutputStreamの場合
- 11. MySQLの場合
- 12. Random.Valueの場合
- 13. java.lang.NullPointerException:nullの場合
- 14. SQLの場合
- 15. CMSの場合
- 16. (Windowsの場合)
- 17. PHPの場合
- 18. ループスキップエラーの場合
- 19. 他の場合
- 20. パスワードダイアログウィンドウの場合
- 21. ルビースリムインラインの場合
- 22. この場合
- 23. SPSSの場合
- 24. スクロールスティッキーヘッダーの場合
- 25. カスタムエクスプレスハンドルバーヘルパーの場合
- 26. 場合
- 27. 場合
- 28. 場合
- 29. 場合
- 30. 場合
あなたはswitchステートメントをしたいですか? – Will
if文で十分です。 + =演算子を使用して文字列を作成します。 'passArg + =" Thu "'と 'passArg + =" Fri "'などのように –
@ M.kazemAkhgaryとチェックを外すとどうしますか?文字列の連結を解除するだけではできません。 – TKharaishvili