WPF では、テーマ フォルダー内の個別の XAML ファイルにマークアップを保持し、MergedDictionaries を使用してそれらを generic.xaml にインポートすることにより、複数のユーザー コントロールの XAML を整理することができました。
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="MyFirstControl.xaml" />
<ResourceDictionary Source="MySecondControl.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
マージされた辞書サポートを導入する Silverlight 3 ベータ版が利用可能になったことで、Silverlight ユーザー コントロールで同じことが可能になるように思われました。しかし、マージされたディクショナリ ファイルに対するビルド アクションのすべての組み合わせと、generic.xaml 内のソース参照の対応する構文を試してみたにもかかわらず、うまく動作しないようです。
他の誰かが試しましたか?それが可能かどうか、そしてもしそうなら私が間違っていることを誰かが知っていますか?
OK - 多数のテスト プロジェクトの後、WPF で動作するサンプルを取得し、XAML と C# のコードを Silverlight 3 に移行しましたが、それでも失敗しました。すべての Silverlight 2 ビットとすべての Silverlight 3 ベータ ビットを完全にアンインストールして再インストールし、ついに物事が機能しました。
どういうわけか、ベータ版のインストールに失敗したとしか思えません。わかりませんが、明らかにバージョン 3 ランタイムがインストールされているにもかかわらず、まだ Silverlight 2 ランタイムで実行しているように見えました。
物事を調べて SL3 チームに確認してくれた Jared に感謝します...そして、同じマシンで Silverlight 2 と 3 を実行するための手順とバッチ ファイルを作成してくれたAmy DullardとShawn Wildermuthに感謝します。