0

私には4つのDropDownListコントロールがあります。年、国、PC、CC

を選択すると、 PCおよびCCとともににデータが入力されます。ただし、[]のみを選択して[送信]をクリックすると、結果は次のように表示されます。 DropDownList ButtonGridView

PCのリスト|| 総取引額

PC1 ........................
500.00PC2......................。 。600.00

しかし、PCCCを選択すると、結果が異なり、次のように表示する必要がありますGridView

アカウント|| 総取引額


ACC1 ........................ 100.00ACC2......................。。200.00

これら2つのプロセスの類似点は、最初からPCのリストのGridView1つをクリックするときに、最後を使用する必要があることです。GridView

質問

  1. これらの2つの異なるユースケースに別々GridViewのコントロールを使用し、検索結果を異なるものにバインドする必要がありGridViewますか?
  2. 2つのメソッドがあり、1つは選択したのPCの合計を返し、もう1つのメソッドは選択したPCCC )のアカウントの合計を返します。この場合、同じGridViewを使用している場合、文字通り次のようにできます。実際には機能していない別の結果?

        protected void _UIButtonSubmit_Click(object sender, EventArgs e)
    {
        IEnumerable<AccountTransactionViewModel> transactions = null;
        IEnumerable<TransactionTotalForProfitcenterViewModel> totalProfitcenterTranAmount = null;
    
        if ((_UIFilterDDCountry.SelectedValue) != null)
        {
            //transactions = ts.GetAllTransactionsByCountry(_UIFilterDDCountry.SelectedItem.Value);
            totalProfitcenterTranAmount = ts.GetTotalTransactionsForProfitcenter(_UIFilterDDCountry.SelectedItem.Value);
    
            _UITransactionGridView.DataSource = totalProfitcenterTranAmount;
        }
    
        else if ((_UIFilterDDCountry.SelectedValue) != null 
                && !string.IsNullOrEmpty(_UIFilterDDProfitcenter.SelectedValue) 
            && !string.IsNullOrEmpty(_UIFilterDDCostcenter.SelectedValue))
        {
            transactions = ts.GetAllTransactionsByYearCountryProfitcenterCostcenter(
                                            _UIFilterDDCountry.SelectedItem.Value,
                                            int.Parse(_UIFilterDDProfitcenter.SelectedItem.Value),
                                            int.Parse(_UIFilterDDCostcenter.SelectedItem.Value));
            _UITransactionGridView.DataSource = transactions;
        }
        _UITransactionGridView.DataBind();
        _UITransactionGridView.PageIndex = 0;
    }
    

誰かが私(asp.netとc#の初心者)を正しい方向に導き、おそらくより良いオプション、ロジック、アイデアなどを提案してくれれば本当にありがたいです。

4

1 に答える 1

0

UIFilterDDCountry.SelectedValueはnullにすることができますか?また、ドロップダウンにバインドされている値は何ですか。

また、国のドロップダウンを必須に設定し、メソッドで国のドロップダウン値のチェックを削除し、国のドロップダウンチェックなしで条件チェックを逆にする必要があります

選択した値ではなく、ドロップダウンのselectedindex値を使用してみてください。

単一のグリッドビューを使用して先に進むことができますが、選択したオプションに基づいて実行時(コードビハインド)に列名などを変更するためにいくつかのコードを記述する必要があります。それ以外の場合は、2つのグリッドビューコントロールを使用し、選択したオプションに基づいてその可視性を設定します。

于 2013-02-19T11:32:48.203 に答える