問題タブ [itemsource]

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 投票する
2 に答える
425 参照

wpf - WPF ComboBox バインディング: MVVM

MVVM デザイン パターンを使用して、WPF コンボボックス ItemsSource をコレクションにバインドしようとしています。以下は私のコードです

XAML:

コードビハインド:

モデル クラス :

ViewModel クラス:

だから、これは私がこれまでやってきたことです。ここで、私が直面している問題は、コンボ ボックスをクリックしても何も起こらないことです。

事前にご協力いただきありがとうございます。

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

c# - リストビューからデータを取得する

私の Windows ストア アプリには、アイテム ソースを使用してデータを取得するリスト ビューがあります。次のようになります。

私のC#コード

ユーザーがリストビュー内のアイテムを選択すると、その ID を取得する必要があります。しかし、私はそれを行う方法を理解していません。誰でもその方法を教えてもらえますか?

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

c# - WPF DataGrid: UI が ItemSource を更新しない

私は DataGrid を使用して、ユーザーからの入力を取得し、リストに配置しています。DataGrid.ItemSource プロパティを使用して、作成したリストに DataGrid をバインドしました。ただし、実行時に DataGrid を編集すると、それにバインドされているリストは自動的に更新されません。

カスタム タイプ (PedLoad) のリスト (loadTable) を定義することから始めます。

コードの後半で、項目 (PedLoads) をリスト (loadTable) に追加し、次のように DataGrid (dgdLoadTable) にバインドします。

これは問題なく動作しますが、DataGrid を更新する場合を除いて、List (loadTable) はそれに追いつきません。ユーザーが DataGrid を編集するたびに List を更新するにはどうすればよいですか?

以下は、ObservableCollection で変更された完全なコードです。

public partial class MainWindow : Window { //スケッチ オブジェクトを作成します Rectangle slab = new Rectangle(); 長方形の台座 = new Rectangle();

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

c# - WPFでは、描画オブジェクトのコレクションのコレクションが必要です

パネルにいくつかのものを描画する WPF プロジェクトがあります。次のリリースでは、既存のものに加えて、描画する別の種類のものを追加する必要があります。現在、ItemsPanel と ItemsSource を含む ItemsControl を含むグリッドがあります。既存の ItemsSource は次のようになります。

コレクションのほとんどは、線または多角形です。描画オブジェクトのプロパティをバッキング オブジェクトにバインドするように DataTemplates を定義しました。BarrierLine オブジェクトの例は次のようになります。

これはすべてうまくいきます。次に、既存のものに加えて、描画するもののコレクションを追加する必要があります。この新しいものには、線のコレクションと、平行移動と回転の値があります。残念ながら、これらの新しいもののコレクションを描く必要があります。各インスタンスには、独自の平行移動と回転、および線のコレクションがあります。実際には、行のコレクションのコレクションができました。CollectionContainers をネストする方法はありますか? コレクションを DataTemplate に追加する必要がありますか? 私はどちらの方向に行くべきか途方に暮れています。

編集:

OK、Peter の要件を満たすことを期待する概念実証プログラムを作成しました。以下にコードを提供します。次の 5 つのファイルで構成されます。 LineArt.cs ObstacleArt.cs MainWindowResource.cs MainWindow.xaml.cs MainWindow.xaml

LineArt オブジェクトは、1 本の線を描画するために必要なデータを表します。ObstacleArt オブジェクトは、線のコレクションと、それらの線の平行移動と回転を表します。線のコレクション (平行移動や回転なし) と、それぞれが線のコレクションを持つ障害物のコレクションを描画できるようにしたいと考えています。

ピーターの提案を使用して、CompositeCollection 内にある CollectionContainer の Collection プロパティ内に CompositeCollection を配置しようとしました。下部にある xaml ファイルで確認できます。

コレクションの Path プロパティに「Obstacles[0].Lines」を入れると、最初の障害物の線が描画されますが、インデックスを取り出して「Obstacles.Lines」と言うと、何も描画されません。私が必要としているのは、すべての障害物のすべての線を描く能力です。

それに加えて、線のセットごとに平行移動と回転を設定する必要があります。

ここにファイルがあります。これをコンパイルして実行できるはずです。

LineArt.cs

ObstacleArt.cs

MainWindowResource.cs

MainWindow.xaml.cs

MainWindow.xaml

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

c# - itemsource を使用してデータグリッドを更新する

私は ObservableCollection である Item ソースを持っていますが、それを更新するたびに。アイテム ソースを削除して返すまで、プログラムはアイテム ソースを表示しません。

私がそれをしているときに、GUIが動かなくなりました。

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

c# - MVVM Itemsouce ボタン コマンドと別のビューの呼び出し

'助けてください'。編集ボタンが押されたときに、ビューモデルから別のビューを呼び出す必要があります。showdailog() もう使えません。このビューから別の子ビューを呼び出しています。

編集--> 削除</Button> </Border> </Border> </Border> </Border> </Border> </Border> </Border>-->

ビューモデル:

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

wpf - ListView にクラスの項目ソースを入力します

私はこれSingletonをメンバーとして保持してObservableCollection<MyData>います:

メイン フォーム クラスからの宣言:

そしてここでコンストラクターの後に:

XAML:

ユーザーがファイルを選択すると、各ファイルをチェックしたい:

と:

したがって、この時点以降、リストにファイルを追加しても何も起こりません。