-1

ソリューションにC#クラスライブラリプロジェクトがあり、ユーザーコントロールを追加して、WPFアプリケーションから次のコードを貼り付けました。

xamlはすべて正常に見えますが、コンパイル時に特定のエラーが発生します。例:

1) System.Windows.DataFormats' does not contain a definition for 'StringFormat'
2) System.Windows.Controls.TextBlock' does not contain a definition for 'Background' and no extension method 'Background' accepting a first argument of type 'System.Windows.Controls.TextBlock' could be found
3) System.Windows.Media.Colors' does not contain a definition for 'LightCoral'
4) System.Windows.Controls.TextBlock' does not contain a definition for 'Background' and no extension method 'Background' accepting a first argument of type 'System.Windows.Controls.TextBlock' could be found (are you missing a using directive or an assembly reference?)

これらのエラーが発生している理由がわかりません。これらは、TextBoxの背景、ドラッグドロップ、DataFormatsなどに関連しています。.xaml.csコードもここにあります。http://pastebin.com/CY8E8prz

4

2 に答える 2

2

エラーによって参照されているプロパティを削除する必要があります。これは、Silverlightにプロパティがないか、名前が異なるためです(WPFとSilverlightは完全に同じではなく、前者は後者よりも多くの機能を備えています)。

いくつかの例:

  • の背景に色をTextBlock付けるには、それをBorder(それに応じて位置/サイズの属性を調整する)で囲むことができます。
  • LightCoral色の名前のように見えるので、似たようなものを探すか、使用する必要がありますColor.FromArgb()

つまり、WPFからSilverlightにコピーして貼り付けたコードが、そのまま機能することはめったにありません。

于 2012-07-26T12:47:38.633 に答える
1

Textblockには、Silverlightの背景はなく、WPFのみがあります。残りのエラーはそれに続くと確信しています。その特定の問題については、テキストブロックを別のコントロールの上に配置するか、代わりにラベルを使用してください。色については、RGBを調べて直接設定するだけです。他のエラーについては正確にはわかりません。

于 2012-07-26T12:53:12.597 に答える