0

さまざまな種類のファイルに対応する一般的なユーザー コントロールを取得しました。このユーザーコントロールは、各ファイルに固有の別のユーザーコントロールを保持して表示する必要があります。だから私は、ファイルの種類に基づいた戦略パターンのユーザーコントロールの選択が好きです。したがって、ユーザーがファイル A を開くと、子ユーザー コントロールのタイプは ucA になり、ファイル タイプ B を開くと、タイプは ucB になります。

これに最適なアプローチは何でしょうか。

親ユーザーコントロールは、実行時にファイルタイプに基づいて正しい子ユーザーコントロールを挿入できる ContentPresenter を保持する必要がありますか? または、それについて何か良い方法がありますか。

または、その効果に似たコードビハインドを実行するだけです。

parentUCPanel.Children.Add(Factory.GetUC(filetype));

子ユーザーコントロールには、親ユーザーコントロールのビューモデルにバインドするためのいくつかの依存関係プロパティを持つ共通のベースタイプがあると予想されることを追加するのを忘れました。

助けてくれてありがとう。

4

1 に答える 1

0

DataTemplateSelectorが役立つかどうかを確認してください。

于 2012-07-20T08:08:06.487 に答える