問題タブ [wpfdatagrid]

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

wpf - 制御が無効になっている場合、WPFDatagridは行の選択を解除します

ユーザーがデータグリッドの行を選択し、[記録の開始]ボタンをクリックするプログラムがあります。「記録」が行われている間、データグリッドで選択された値を変更することは許可されていないため、IsEnabledをfalseに設定しました。ただし、データグリッドが無効に設定されている場合、選択された行の選択が解除され、データグリッドのSelectedItemプロパティへのバインディングが台無しになります。

コントロールが無効になっている場合でも、データグリッド行を選択したままにする方法はありますか?

編集:これはWindows Vistaでは発生しませんが、Windows7では発生します。

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

wpf - マスター/詳細 UI のベスト プラクティス?

マスター/詳細ウィンドウを持つ WPF アプリがあり、どちらも WPF Datagrid です。上部のデータグリッドで行を選択すると、詳細が下部のデータグリッドに表示されます。次のようなものに対処する方法について、UI の観点からベスト プラクティスがあるかどうか疑問に思っていました。

  1. ウィンドウが最初に開いたとき、上部のデータグリッドでデータ行が選択されていないため、下部のグリッドにデータを表示できません。これは正常ですか?または、通常、上部のデータグリッドで最初の (一番上の) 行が選択されていますか?
  2. 行を選択して削除すると、別の行が選択された行になりますか? それとも、行が選択されていない状態になりますか?
  3. 複数の行を選択できる場合、下位のデータグリッドではいつ発生しますか? 最後に選択したものを表示しますか? または、これらの複数のオブジェクトに対して削除が選択された場合、フォーカスはどこに設定されますか? または、どの行が選択されていますか?

アプリの作成方法に応じて、これらのことを処理するさまざまな方法があることは知っていますが、標準的なベスト プラクティスがあるかどうか疑問に思いました。または、WPF データグリッドがこれらのケースをどのように処理するかについて、いくつかのデフォルト操作がある場合は?

ありがとう!明細書

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

wpf - WPF Datagrid ですべてのセルにイベントを設定する方法

OnDragEnterWPF Datagrid のすべてのセルにイベントが必要です。私はこれを試しました:

しかし、うまくいかないようです。アイデアはありますか?


編集:回答ありがとうございます。別の問題に直面していることに気付きました: 私の本当の問題は、TextBoxコントロールが常にドラッグ アンド ドロップ イベントを処理済みとしてマークするため、AllowDrop を設定AllowDrop="True"しても、AllowDrop が機能していないように見えることでした。これはバグではなく、実際にはこの動作は設計によるものです。

私はプレビュー イベントを使用してこれを予測し、D'n'D イベントを処理できるようにしました。

お役に立てれば。
最初の質問に関しては正確だったので、回答としてマークします。

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

wpf - バインディング時にWPFToolkit DataGridが非常に遅いのはなぜですか?

私は非常に単純なテスト アプリケーションを持っています。ここには 2 つのオブジェクトがあり、それぞれにアイテムの小さなコレクションがあります。オブジェクトを選択すると、そのコレクションが WPFToolkit DataGrid に表示されます。

問題は、上/下キーを押してオブジェクト間の選択を切り替えると、それが追いつかないことがわかるような、顕著な遅延があることです。

なんでこんなに成績悪いの?

DataContext には、50 項目のランダム テスト データで満たされたいくつかのテスト クラスが取り込まれます。

0 投票する
3 に答える
17378 参照

wpf - WPF - DataGrid 列ヘッダーの配置

私は WPFToolkit DataGrid コントロールを使用しており、ヘッダー テキストが水平ではなく垂直に表示されるように列ヘッダーの一部を再スタイルしたいと考えていました (列のデータはすべて数値であるため、幅はあまり広くありませんが、ヘッダー テキストは長いです)。だから私は DataTemplate を作成し、それに DataGridColumn.HeaderTemplate を取得しようとしました。これは私のテンプレートです:

これは、ヘッダーの配置が常に左と中央であることを除いて、問題なく機能します。StackPanel または TextBlock の配置の組み合わせは、違いを生むようには見えません。テキストを下と中央に揃えたいと思います。どうすればそれを行うことができますか?

ありがとう、

0 投票する
7 に答える
18540 参照

wpf - WPF DataGrid Hide RowDetails or Unselect Row

I have a DataGrid who's RowDetails is set to show when selected (RowDetailsVisibilityMode="VisibleWhenSelected"). Now I want to be able to get rid of it! I put a close button on the row details with this code:

That code gets me 90% there, but once the row details is collapsed for a given row it will not appear the next time that row is selected.

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

wpf - 複合型のDataTableへのWPF Datagridバインディング

あるモデルのデータを含むクラスがあります。このクラスには、実際の値とともにメタデータがあります。

今では、あらゆる種類のロジックを持つ DataTable から派生したクラス MyDataTable もあります。サーバーを呼び出し、一連の ServerValues を取得し、それらを行と列に配置します。

最後に、MyDataTable にバインドする WPF DataGrid があり、データが表示されます。これは、DataGrid が各 ServerValue で ToString を呼び出し、表示用の値を取得するためです。ここまで万歳。

ここで、双方向のデータバインディングを行いたいので、グリッドへの入力は ServerValue に書き戻されます。したがって、グリッド セルを ServerValue 自体ではなく、ServerValue の Value プロパティにバインドしたいと考えています。

現在、DataGrid セルの ServerValue は文字列に置き換えられています。これを回避することはできますが、最初にエレガントなルートを試してみたいと思います。

したがって、セルに複合型のデータテーブルがあり、その型の特定のプロパティへの双方向データバインディングが必要です。

これは可能ですか?私はこれについてグーグルで調べてきましたが、これについては何もできません。

前もって感謝します、

ジョン

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

wpf - WPF:データグリッドのフォーカスを特定の行に設定するにはどうすればよいですか?

データ グリッドの最初の行にフォーカスを設定したいと思います。

これは私がこれまでに持っているものです:

これにより、データグリッドにフォーカスが設定されますが、行自体には設定されません。

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

wpf - WPF 4: DataGridColumnHeader はどうなりましたか?

DataGridColumnHeader はどうなりましたか? DataGrid が PresentationFramework に移動されたときに削除されたようです。

0 投票する
4 に答える
10585 参照

wpf - WPF DataGrid プログラムによる複数行の選択

以下のサンプルより簡単なものはありますか? DataGrid lstLinks にバインドされた監視可能なコレクション (コード内の「リスト」) があります。