0

ここで奇妙な問題があります。ページリソースで4つのControlTemplatesが宣言されたページがあります。このページのコードで、これらの各ControlTemplatesへの参照を宣言して、バインディングで使用できるようにします。これは、SharePointのSilverlight Webパーツで実行されている場合を除いて、ブラウザー外およびブラウザー内で正常に機能します。SharePointでは、テンプレート化するボタンは、テンプレートで定義した特別なレイアウトやコンテンツではなく、クラスをテキストとして持つ通常のボタンとして表示されます。SharePoint以外のすべての場所で機能する理由はありますか?

4

1 に答える 1

0

SharePointで実行されているときにのみnull参照が発生した原因はわかりませんが、コードをリファクタリングして、List <>を1回割り当てるのではなく、ItemsControl.ItemsSourceがプロパティを参照するようにしました。これで、正常に機能しています。

これを理解するのに役立ったのは、SilverlightWebパーツを実行していたInternetExplorer(Chromeではうまく機能しなかった)プロセスにVisualStudioを接続する機能でした。これは、VisualStudioで[ツール]メニュー>[プロセスにアタッチ]に移動すると表示されます。[タイプ]列にSilverlightが含まれているため、どのIEプロセスであるかは明らかです。

于 2012-07-24T16:08:39.093 に答える