0

comboboxデータベースの特定の列に値を挿入することは可能ですか?

たとえば、 item1item2item3comboboxを持っていて、それらをいくつかにしたい場合: column1、管理したいのはこれです: item1が選択されている場合、 をクリックすると、その項目の値を挿入したいcolumn1、それ以外の場合、選択した項目がitem2の場合、item2の値をcolumn1に挿入するなど...bindcolumnbutton

質問があまりよく書かれていないことはわかっていますが、これが可能かどうかを知りたいだけです。

この種の問題についてグーグルで検索しましたが、解決策が見つかりませんでした。columnレコードを項目リストに挿入する方法comboboxは知っていますが、その逆の方法はわかりません。

また、WPF/WCF/MVVM アプリケーションでこの問題が発生していると言いたいので、その方法で解決できるかどうか (およびその方法) を知りたいです。

4

3 に答える 3

1

このソリューションは、MVVM パターンに基づいています。コンボ ボックス コントロールの Selected 項目をビュー モデルのプロパティにバインドします。したがって、ビューは次のようになります

    <ComboBox ItemsSource="{Binding SomeItems,UpdateSourceTrigger=PropertyChanged,NotifyOnSourceUpdated=True}" SelectedValue="{Binding SelectedItemBinding,UpdateSourceTrigger=PropertyChanged,NotifyOnSourceUpdated=True}" />

    <Button Command={Binding ButtonClickCommand} ..../>

したがって、ボタンをクリックすると、ビューモデルで RelayCommand ハンドルが取得され、選択した項目を取得し、値を使用して列に挿入するロジックをそこに持つことができます。ビューモデルは次のようになります。

    public class ViewModel : //implement notify property changed and ICommand
    {
        public RelayCommand ButtonClickCommand
        {
             get new RelayCommand(EventHandlerToBeCalled);
        }


        public string SelectedItemBinding
        {
             get;
             set
             {
                  //notify property changed.
             }
        }

        //method called when button is clicked.
        private void EventHandlerToBeCalled()
        {
              //here set the SelectedItemBinding to a column.
        }
    }
于 2013-06-19T13:17:30.787 に答える
0
  1. コンボボックスでは、プレフィックス(col1_12、col2_24など)で値を保存できます
  2. ボタンをクリックすると、値を解析する必要があります。プレフィックスと元の値で分離します
  3. 必要な列に値を書き込むことができます:

    スイッチ (プレフィックス) { case "col1" : table.column1 = value; 壊す; ケース "col2" : table.column2 = 値; 壊す; //など}

于 2013-06-19T13:22:23.640 に答える