2017-08-28 5 views
0

謝罪。私は、動的な背景を必要とする項目(Windowsの、ユーザーコントロールとDockPanels)のカップルを持っています。あなたがキャンバスにWPFの要素の背景を設定することはできますか?これが求められているが、私は答えを見つけることができない場合

私はCanvasオブジェクトが私のニーズによく合っていますが、コントロールオブジェクトのBackgroundの値として<Canvas>オブジェクトを設定することができます。

はこれが行われ、そうであれば、どのようにすることはできますか?

+2

たVisualBrushを見てみましょう。 – Clemens

+1

'Canvas'(とその中のすべての要素)をとり、それを別の' Control'のバックグラウンドとして使用したいとしますか? – XAMlMAX

答えて

1

:VB.NETでは、このようなものを使用します。

<Window.Background> 
    <VisualBrush> 
     <VisualBrush.Visual> 
      <Rectangle Width="50" Height="50" Fill="Red"></Rectangle><!-- Replace this with a reference to your Canvas--> 
     </VisualBrush.Visual> 
    </VisualBrush> 
</Window.Background> 

コードはthis siteから参照されていますが、その背景にはさらに多くのことがあります。セットは、あなたがそれを開発している言語を指定していないので、私は、すなわちC#を使用している言語に答えを提供するなど...

をクリッピングと同様に、私はVBを使用しないでください。

+2

私は微笑んだ... VB.Net対C# – grek40

+0

に関するサイドノートと純粋なXAMLの答え私はこれが答えだと思う。私は二者択一の方向に引き裂かれた。私はチャンスをいつ受けるのかを確認します。 – RLH

+0

私はこのupvoteあげます。バグは、私が関連するコードに戻るのを妨げてきました。わかりやすくするために、 ''の中に ''を置くか、 ''は基本的にキャンバス形式のオブジェクトですか? – RLH

0

あなたは、既に要素が設定されているCanvasの "内容"でコントロールのBackgroundプロパティを設定しますか? もしそうなら、はい。キャンバスからブラシを作成するこのタスクを実行することは可能です。これを行うには、VisualBrushクラスが必要です。はい、あなたがそれを行うことができます

Dim oBrush As New VisualBrush(myCanvas) 
myControl.Background = oBrush 

幸運、良いコード

関連する問題