私のコードビハインドのためにC#でプロジェクトトラッカーASP.net wbsiteを作成しています。私のデフォルトビューにはSQL Server DBを照会するGridViewがあり、そのうちの1つはProject Status(ProjStatus)で、5つのオプション(進行中、保留中、完了、延期、キャンセル済み)を持つことができます。チェックボックスを使ってプログラムでGridViewをフィルタリングする
ここで、チェックボックスリストを使用してインクリメンタルフィルタを作成する必要があります。たとえば、「進行中」のチェックボックスを選択した場合、「進行中」のプロジェクトのみを表示するだけですが、「保留中」のチェックボックスをオンにした場合は、両方を表示することができます。
私は以前は3つのステータス(進行中、保留中、完了)しか持っていませんでしたが、if文を使用して各チェックボックスの組み合わせをハードコーディングしてこの問題を解決しましたが、現在5があります。そうするには長い。私のコードビハインドでこれをプログラマチックに行うための提案はありますか?
ありがとうございました!
編集:
私は以前にラジオボタンを使用していたが、私は私の上司の要求に応じて、今日それ以前を変更しなければなりませんでした。これは、SqlDataSourceコントロール
if (radioStatus.SelectedItem.Value == "Active")
{
SqlDataSource1.FilterExpression = "[PROJ_STATUS] = 'Active'";
GridView1.DataBind();
}
else if (radioStatus.SelectedItem.Value == "Pending")
{
SqlDataSource1.FilterExpression = "[PROJ_STATUS] = 'Pending'";
GridView1.DataBind();
}
else if (radioStatus.SelectedItem.Value == "Postponed")
{
SqlDataSource1.FilterExpression = "[PROJ_STATUS] = 'Postponed'";
GridView1.DataBind();
}
else if (radioStatus.SelectedItem.Value == "Cancelled")
{
SqlDataSource1.FilterExpression = "[PROJ_STATUS] = 'Cancelled'";
GridView1.DataBind();
}
else
{
SqlDataSource1.FilterExpression = "[PROJ_STATUS] = 'Complete'";
GridView1.DataBind();
}
あなたは何を試してみることができますか? – AsifAli72090
私は自分のコードで編集を追加しましたが、以前はラジオボタンで実装していたソリューションでしたので、1つのオプションしか選択できなかったのでインクリメンタルフィルタリングはありませんでした。 –
ここでは、チェックボックスからチェック? – AsifAli72090