2017-08-31 44 views
0

ContentControlの子コントロールに基づいて、親のContentControlのZ-インデックスを設定する必要があります。WPF ContentControlはZIndexを子ZIndexに設定します

はここに私の小さな例を示します。この例では

<Page 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 
    <Grid> 
    <Rectangle Fill="Green" Width="100" Height="100" Panel.ZIndex="5"/> 
    <ContentControl> 
     <Rectangle Fill="Red" Width="100" Height="100" Panel.ZIndex="10" /> 
    </ContentControl> 
    </Grid> 
</Page> 

、Panel.ZIndexはRedRectangle内で宣言しても効果はありません。

私は2つの選択肢を考えた:

  • は子供が私は分からなかった親

Panel.ZIndexを設定している子のPanel.ZIndex値に親のバインドを持っていますこれらの2つのオプションのいずれかを実行する方法を説明します。私が直接してみContentControl

答えて

1

Panel.ZIndexプロパティを設定することはできません意味結局私の子コントロールがContentControl使用して適用されますDataTemplateで定義されてい

、この:私は台無し

<Grid> 
    <Rectangle Fill="Green" Width="100" Height="100" Panel.ZIndex="5"/> 
    <ContentControl Panel.ZIndex="{Binding Content.(Panel.ZIndex), RelativeSource={RelativeSource Self}}"> 
     <Rectangle Fill="Red" Width="100" Height="100" Panel.ZIndex="10" /> 
    </ContentControl> 
</Grid> 
+0

と'ContentControl'の代わりに' ContentPresenter'のためにそれを使う必要があります。あなたは私の元々の質問に答えました:)(ContentPresenterが簡単にコメントを追加するのは簡単です) – ManIkWeet

+0

ContentPresenterは別の話です。 Contentプロパティはありません。しかし、別の問題がある場合は、新しい質問をしてください。 – mm8

関連する問題