問題タブ [datagridcomboboxcolumn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
8 に答える
126721 参照

.net - WPFDataGridのComboBoxColumnのItemsSourceをバインドする

2つの単純なModelクラスと1つのViewModelがあります...

...そしてシンプルなウィンドウ:

ViewModelはDataContext、App.xaml.csのメインウィンドウに設定されています。

ご覧のとおりItemsSource、DataGridGridItemsのをViewModelのコレクションに設定しました。この部分は機能し、名前が「Jim」の単一のグリッド線が表示されます。

ItemsSourceまた、すべての行のComboBoxCompanyItemsのをViewModelのコレクションに設定したいと思います。この部分は機能しません。ComboBoxは空のままで、デバッガー出力ウィンドウにエラーメッセージが表示されます。

System.Windows.Dataエラー:2:ターゲット要素の支配的なFrameworkElementまたはFrameworkContentElementが見つかりません。BindingExpression:Path = CompanyItems; DataItem = null; ターゲット要素は'DataGridComboBoxColumn'(HashCode = 28633162); ターゲットプロパティは「ItemsSource」(タイプ「IEnumerable」)です。

WPFは、そうではないCompanyItemsプロパティであると期待していると思いGridItemます。それが、バインディングが失敗する理由です。

私はすでにaなどで作業しようとしましRelativeSourceAncestorType

しかし、それは私にデバッガー出力で別のエラーを与えます:

System.Windows.Dataエラー:4:参照'RelativeSource FindAncestor、AncestorType ='System.Windows.Window'、AncestorLevel='1''でバインドするためのソースが見つかりません。BindingExpression:Path = CompanyItems; DataItem = null; ターゲット要素は'DataGridComboBoxColumn'(HashCode = 1150788); ターゲットプロパティは「ItemsSource」(タイプ「IEnumerable」)です。

質問:DataGridComboBoxColumnのItemsSourceをViewModelのCompanyItemsコレクションにバインドするにはどうすればよいですか?それは可能ですか?

よろしくお願いします!

0 投票する
1 に答える
1295 参照

wpf - Datagridviewcomboboxcolumn に腹が立つ

ソースにバインドされている wpf datagridview があります。ソースは、データベースから手動で入力されたデータセットです。

データグリッドコンボボックス列があります

列のアイテム ソースをデータセット (DSGLAccounts.tables..etc) に設定し、displaymemberpath を列名 "Account_ID" に設定しました。

アカウントリストは正常に表示されますが、実行時にアイテムを選択すると、別のセルに移動するとセルが保持されず、消えてしまいます

今、グリッド ビュー (DSRegisters) のソースであるデータセットに応じて、選択されたインデックスをある値に等しくする方法を理解できません。

選択したインデックスを設定する方法を知る必要があります プロパティ (SelectedItemBinding/SelectedValueBinding/SelectedValuePath) について知る必要があると思います

フォームはこちら

wpf フォームからのスナップショット これが私の愚かなコードです:)

それはコードビハインドです

どこ

DSRegister は、データグリッドに表示する必要があるレコードを含むデータセットです DSGLAccounts は、datagridcombobox をバインドする必要があるデータセットです

また、私が言ったように実行時に、コンボボックスから値を選択すると、編集できないかのように、セルを離れるときに選択が保持されません

私はwpfのnoooobです。助けが必要です。例やこのようなものがあれば、非常に役に立ちます

0 投票する
1 に答える
1525 参照

wpf - WPF DataGridComboBoxColumn DisplayMemberPath に 2 つの値を表示する

DataGridComboBoxColumn にリストされたいくつかのデータ ポイントを表す一連のオブジェクトがあります。DisplayMemeberPath プロパティを設定する x 座標など、単一の値を表示できます。私がやりたいことは、x座標とy座標の両方を「x、y」形式で表示することです。これを行う方法についてのアイデアはありますか?

0 投票する
2 に答える
28067 参照

wpf - WPFDataGridComboBoxColumnをMVVMにバインドする

さまざまな 質問への回答を見てきましたが、解決しようとしている問題への回答の内容をマッピングすることができませんでした。私はそれを次のコード(私が達成しようとしている結果を表す)に減らしました、そして基本的に行が編集されていないときにPerson.TitleId対応するものとしてレンダリングできるようにしたいTitle.TitleText、そしてドロップダウンを持っていますTitleTextドロップダウンにsが表示され、変更されたときに関連TitleIdするレコードに書き戻されるように、正しくバインドされています。Person

<DataGridComboBoxColumn>要するに、これを達成するために私は何を入れますか?

App.xaml.cs

MainWindow.xaml

Person.cs

Title.cs

MainWindowViewModel.cs

ViewModelBase.cs

0 投票する
2 に答える
608 参照

sql - dataGridViewComboBoxColumn から繰り返し値を削除する

私はインDataGridViewComboBoxColumnを作るために使用しますが、私は十分ではありません. 値を繰り返さないようにする必要があります。これは例です:ComboBoxDataGridViewComboBoxComboBox

アップル
ブラックベリー
クローム
アップル

複数回表示される値を削除したい。どうやってやるの?

これは私のコードです:

0 投票する
2 に答える
380 参照

wpf - wpf DataGridComboBoxColumn GroupStyle

とにかくグループスタイルを DataGridComboBoxColumn に設定する方法はありますか?

ありがとう

0 投票する
2 に答える
2713 参照

c# - DataGridView ComboBox は設定されません

ComboBox である DataGridView に列があり、データを入力できません。私は自分のコードを何度も見てきましたが、正しいように見えますが、ComboBox が設定されていないため、そうではありません。

これが私のコードです。

まず、テスト用の静的 DataSource:

これは、ComboBox 列の DataPropertyName を表示するだけです。

次に、データを取得し、その行ごとに DataGridView に行を追加し、新しく追加された行のセルにデータを入力します。最後に ComboBox 列があり、ご覧のとおり、DataSource、DisplayMember、および ValueMember プロパティを設定しています。セルの Item コレクションに静的な値を追加しようとしたため、最後の 3 行がコメントアウトされていることに注意してください。どちらのアプローチも機能しませんでした。最初の 3 つの列にはデータが含まれていますが、ComboBox セルにはデータが含まれていません。

ここで私が見逃しているものを誰かが見てくれることを本当に望んでいます。ちなみに、デザイナーで列を作成しました。

ありがとう。

0 投票する
1 に答える
845 参照

wpf - WPF DataGrid ComboBoxColumnが値を挿入しない

コンボボックス列と 2 つのテキストボックス列を持つ WPF データグリッドがあります。私のテスト ケースでは、画面が読み込まれると、グリッドがバインドされているコレクションに 2 つの行があります。いずれかのセルの内容を変更すると、正しく更新されます。ただし、グリッドに新しい行を追加すると、コンボボックス列の値を更新しても、ソース コレクションでは更新されません。ただし、テキストボックスの列は、新しく追加された行に対して適切に機能します。列は次のように定義されます。

ビューモデルの PhoneNumbers プロパティは次のとおりです。

更新: ここに私の PhoneNumber クラスがあります:

0 投票する
1 に答える
991 参照

wpf - DataGridComboBoxColumn 動的バインディング

コンボボックス列を持つデータグリッドがあります。この列を、コード ビハインド ファイルで動的に生成するアイテムのリストにバインドしたいと考えています。データグリッドのすべての行は、コンボボックス列に同じ項目のリストを持ちます。ObjectDataProvider を使用して静的バインディングを実行しましたが、これを動的に行う方法がわかりません。

どんな助けでも大歓迎です!

ありがとう、サントッシュ

0 投票する
1 に答える
4651 参照

wpf - ItemsSourceとしてDataTableを使用するWPFDataGridのComboBox列

ComboBoxColumnを使用して、データテーブルにバインドされたデータグリッドがあります。この列のXAMLは次のとおりです。


私の従業員クラス:


グリッドのアイテムソースとして機能するDataTableには、「EmpId」列と「RepName」列が含まれています。コンボボックスにはすべての従業員が入力されており、選択すると、データテーブルに反映されます。ただし、画面が読み込まれると、現在割り当てられている従業員はデフォルトでコンボボックスで選択されません。コンボボックスのSelectedValueBindingプロパティがこれを処理すると思いました...何が間違っているのですか?


明確化のため
の更新:データグリッドは、EmployeeID列を含むデータテーブルにバインドされています。画面が読み込まれるときに、テーブルにEmployeeID 1、2、3の3つの行があると仮定します。最初の行のコンボボックス列でEmployeeID 1を選択し、2番目の行でEmployeeID2を選択する必要があります。 EmployeeID3が選択されている3行目。