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>
mi dà il seguente errore:
Impossibile impostare le proprietà su elementi di proprietà.WPF: proprietà non può impostare su elementi di proprietà stranezza
Se uso:
<l:CustomPanel>
<l:CustomPanel.Caption>
<TextBlock Text="Caption text" FontSize="18" Foreground="White" />
</l:CustomPanel.Caption>
</l:CustomPanel>
mio TextBlock si presenta bene ma è nidificato all'interno di un altro TextBlock in questo modo, sembra anche di aggiungere se stessa al di fuori della proprietà Caption:
<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>
Come avresti già potuto indovinare, quello che vorrei che il mio codice fosse fare è impostare la mia proprietà Caption da XAML su un pannello personalizzato, se possibile.
Ho anche provato lo stesso codice con DependencyProperty senza alcun risultato.
Quindi, chiunque mi può aiutare con questo problema?
Thx Ray, che ha funzionato :) Anche se non ho più bisogno, potrei avere bisogno in futuro, però, quindi grazie per la chiara spiegazione – Willy
Tranne, come dovresti dire? Qualcuno non ci ha pensato e ha applicato ciecamente questo a * tutti * gli attributi, anche quelli che non appartengono a loro. –