WPF: Cannot set properties on property elements weirdness...

Posted by Willy on Stack Overflow See other posts from Stack Overflow or by Willy
Published on 2009-10-12T10:18:37Z Indexed on 2010/05/12 15:54 UTC
Read the original article Hit count: 214

Filed under:
|
|
|
private TextBlock _caption = new TextBlock();

public TextBlock Caption  
{  
    get { return _caption; }  
    set { _caption = value; }  
}

<l:CustomPanel>  
    <l:CustomPanel.Caption Text="Caption text" FontSize="18" Foreground="White" />  
</l:CustomPanel>

Gives me the following error:
Cannot set properties on property elements.

If I use:

<l:CustomPanel>  
    <l:CustomPanel.Caption>
        <TextBlock Text="Caption text" FontSize="18" Foreground="White" /> 
    </l:CustomPanel.Caption>
</l:CustomPanel>

My TextBlock shows up fine but it's nested inside another TextBlock like so, it even seems to add itself outside of the Caption property:

<l:CustomPanel>  
    <l:CustomPanel.Caption>
        <TextBlock>
             <InlineUIContainer>
                 <TextBlock Text="Caption text" FontSize="18" Foreground="White" /> 
             </InlineUIContainer>
        </TextBlock>
    </l:CustomPanel.Caption>

    <TextBlock>
         <InlineUIContainer>
             <TextBlock Text="Caption text" FontSize="18" Foreground="White" /> 
         </InlineUIContainer>
    </TextBlock>
</l:CustomPanel>

As you might have already guessed, what i'd like my code to do is to set my Caption property from XAML on a custom panel, if this is possible.

I've also tried the same code with a DependencyProperty to no avail.

So, anyone that can help me with this problem?

© Stack Overflow or respective owner

Related posts about wpf

Related posts about xaml