問題タブ [rowdetailstemplate]

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

silverlight - Silverlight RowDetailsTemplate を対応する行の上に配置する方法は?

RowDetailsTemplateSilverlight グリッドでを作成する場合、行が選択されたときに行のすぐ下に表示される行の詳細のテンプレートを指定できます。

データグリッドの 1 つに関する詳細は、個々の行の後ではなく、その直前のほうが見栄えがよくなります。

Blend でテンプレートを変更しようとしましたが、テンプレートのこの部分に到達すると行き詰まります。

関連するテンプレートDataGridRowsPresenterがないように見えるので、詳細を行の上に移動する方法が見つからないようです。

これは可能ですか?

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

wpf - .NET4.0にアップグレードした後のWPFDataGridのバグ

状況は次のとおりです
。DataGridには、別のDataGrid(サブグリッド)を含むRowDetailsTemplateがあります。EventHandlerを含むDataGridTemplateColumnを追加すると、NullReferenceExceptionPresentationFramework.dllによってaがスローされます。

この問題は、.NET4.0でのみ発生します。プロジェクトが.NET3.5を対象としている場合(およびDataGridコンポーネントにWPFToolkitを使用している場合)、すべてが期待どおりに機能します。

このエラーを再現する小さなサンプルプロジェクトを添付しました。プロジェクトには、問題を再度説明し、例外のスタックトレースを示すREADMEファイルがあります。(サンプルプロジェクトはここにあります)

再現手順:
1。サンプルプロジェクトをそのまま実行します。
2.グリッドの最初の行にある[DeleteMe]リンクを試して、メッセージが表示されることを確認します。
3.最初の列の[表示]セルをクリックして、1つのアイテムを含むサブグリッドが表示されていることを確認します。
4.サブグリッドの[Deleteme]リンクを試して、何も実行されないことを確認します(コードに接続されていません)。
5.ウィンドウを閉じて、MainWindow.xamlに移動します
。6。36行目のMainWindow.xamlのHyperlink.Clickイベントを接続します。HyperlinkタグにClick="HyperlinkClick"を追加します。
7.プロジェクトを再度実行し、最初の列の[表示]をクリックします。NullReferenceExceptionがスローされます。

これはhttps://connect.microsoft.com/VisualStudio/feedback/details/603333/wpf-datagrid-rowdetails-add-2nd-datagrid-to-rowdetailstemplate-with-eventhandlers#detailsからクロスポストされていますが、これはブロッキングの問題です。私のため。

だから問題は:なぜこれが起こっているのですか?これはPresentationFrameworkコードのバグだと思いますが、100%確実ではありません。EventHandlerを期待どおりに機能させるにはどうすればよいですか?

ユーザーがDeleteキーを押すことを許可することで一時的な回避策を見つけましたが、これによりアプリの動作が損なわれます。
この問題を再現してコメントできる人はいますか?

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

datagrid - WPF では、DataGrid.RowDetailsTemplate にバインドするにはどうすればよいですか?

カスタム クラスの ObservableCollection にバインドされた DataGrid があります。コレクションは ViewModel のプロパティであり、コレクションへの変更を含め、グリッドは正常に機能します。

次のように、RowDetailsTemplate を使用して、StackPanel に 2 つの追加コレクションを表示したいと考えています。

内側のグリッドのバインド ソースである ClusterIndexColumns と IndexColumns も、ViewModel のコレクションです。

問題は、行の詳細を表示すると、データグリッドが空になることです。つまり、まったくロードされず、列も行もありません。

何が起こっているのかを理解するために、内側のデータグリッドをラベルに置き換えました。

バインディング ソースを指定していない - {Binding}

ラベルには、外側のグリッドのソースであるコレクションにあるカスタム クラスの名前が表示されるようになりました。

どういうわけか、内側のグリッドのデータ コンテキストとして ViewModel に戻る必要があります。

しかし、どうやって教えてください?

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

c# - C#/WPF-DataGrid-RowDetailsのTextBoxの幅を含まれているDataGridの幅にバインドする

私の問題はこれに似ています。

行の詳細が、それがまたがる列の幅を超えないようにしたい場合を除きます。

私は試しAreRowDetailsFrozenましたが、これは効果がありませんでした。親グリッドの実際の幅(OneWay)にもバインドしようとしましたが、これにより、幅が2つの画面の幅を超えてしまいます。

これが私の現在の試みです(簡略化)。

これにより、次のようになります。

TextBoxの幅を任意の親コンテナ(Grid、DataGrid、ItemsPresenter)にバインドします。

結果:

非常にイライラします。行の詳細でDataGridの幅を変更しないようにしたいのですが、それだけ質問する必要がありますか?:)

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

wpf - DataGridRow.DetailsVisibilityにデータバインドできますか?

RowDetailsTemplateを使用したWPFデータグリッドコントロールがあります。行にバインドされたオブジェクトにプロパティを設定して、その特定の行に詳細を表示するかどうかを設定できるようにしたいと思います。

たとえば、以下のような基本的なレイアウトがあり、「Detail」オブジェクトに「Expanded」というブールプロパティがある場合、値が変更されたときにそのプロパティをバインドして、行の詳細を表示できるかどうかを確認できますか?

0 投票する
0 に答える
449 参照

wpf - RowDetailsTemplate--mvvm を使用して、データグリッド内の同様の行を選択または強調表示する必要があります

行の詳細を持つデータグリッドがあります。私の行は複製できます。似ている行をすべて選択したい。どうすればそれを達成できますか。私はmvvmパターンを使用しています。ビュー モデルで selectedItem を同じプロパティにバインドしましたが、機能しません。

xaml コードは次のとおりです。

ご覧のとおり、VMレベルで「SelectedAccessory」にバインドすると機能します。画面内の他のコントロールと同期しますが、データグリッド内の他の行とは同期しません。「Overhead Door Opening12」行の 1 つをクリックしたときに、すべての行を選択したいと思います。

前もって感謝します。

ここに画像の説明を入力

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

wpf - WPF4DataGridRowDetailsTemplateのDataGridの行を削除します

RowDetailsTemplateに別のDataGridコントロールを含むWPF4DataGridコントロールがありました。DataGridコントロールとキーボード操作の両方にPreviewKeyDownイベントを追加します。キーボードのDeleteキーを押すと、DataGridコントロールのSelectedItemsが削除されます。私の問題は、RowDetailsTemplateDataGridControlの行を削除したい場合です。ルーティングされたイベント、RowDetailsTemplateを定義するParentDataGridの行も削除されました。RoutedEvent.RoutingStrategyの設定が原因だと思います。しかし、どうすればRowDetailsTemplate DataGridの行のみを削除できますか?ありがとう。

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

wpf - RowDetailsTemplate に DataGrid がある WPF DataGrid は垂直スクロールバーを取得しません

DataGrid を含む RowDetailsTemplate を持つ DataGrid があります。親グリッドは、独自の行に配置されます。行は次のように定義されます

通常、これは、行が使用可能な高さの REST を取得し、最初に取得することを意味します。しかし、DataGrid が画面に残されたスペースに対して大きすぎる場合、DataGird のボタンはスクロールバーを取得する代わりに「画面の下」に消えます。

親グリッドに MaxHeight=400 を定義して解決しようとしましたが、親グリッドの長さは無制限であり、それでも長すぎて底の部分が見えません。

それについて何をすべきか考えていますか?

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

wpf - RowDetailsTemplate にある DataGrid の列で Width="*" が機能しない理由

"*" を使用して DataGrid (RowDetailesTemplate にある) 列の幅を設定すると、列のスケーリングが機能しません。

ここに画像の説明を入力

しかし、DataGrid を Grid に置き換えて、「*」を使用して列幅を設定すると、スケーリングが機能します

ここに画像の説明を入力

DataGrid のスケーリングを修正する方法は?

解決:

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

c# - 別のDatagridのRowDetailsTemplate内のDataGridのSelectedItemを追跡できません

私は今日早くこの問題に遭遇し、解決策を見つけることができません。の中にあるのSelectedItemは、のDataGrid中にある行を選択したときに設定されていません。(明確に説明するのは難しいです。)RowDetailsTemplateDataGridDataGridRowDetailsTemplate

バインディングはすべてリストに対して正しく機能しています。MainViewModelにObservableCollectionMyItemオブジェクトが含まれており、これが外部DataGridバインド先です。

MyItemオブジェクトにはオブジェクトが含まれておりObservableCollection、それらMyItem2は内部に正しくバインドされDataGridます。

MyItemオブジェクトには、内部のにSelectedItem2バインドされることになっているが設定されないというプロパティもあります。SelectedItemDataGrid

ところで:私はVS2012と.Net4.5を使用しています。

例:

MainWindow.xaml

MainWindowViewModel

MyItems ViewModels

ViewModelBase

どんな助けでもいただければ幸いです。

ありがとう!