Ich bin mit einem Problem konfrontiert, Kind Element zu finden. Ich möchte auf das TextBlock-Element in Label zugreifen. Aber ich kann es nicht finden.Wie kann ich unter Verwendung von Stil auf Kindelement eines beliebigen Objekts zugreifen?
Hier ist mein MainWindow.xaml Code:
<Label x:Name="text" Style="{DynamicResource labelstyle}">
<TextBlock>asdasdasd</TextBlock>
</Label>
Hier ist mein Stil-Code:
<Style x:Key="labelstyle" TargetType="Label">
<Setter Property="HorizontalContentAlignment" Value="Left" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Label">
<Border BorderThickness="2" BorderBrush="Red">
<TextBox x:Name="textBox" Text="{Binding RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type TextBlock},
AncestorLevel=2},Path=Text}">
</TextBox>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
I TextBox Eigenschaft Text binden möchten innerhalb TextBlock- Eigenschaft Text zu beschriften. Was soll ich machen ? Ich hoffe, ich habe mich selbst klar gemacht. Danke.
Im Folgenden finden Sie ein Beispielbild:
warum nicht verwenden Standardvorlage, sondern hinzufügen ' ' nach "labelstil"? Standardvorlage ist fast identisch * und * verwendet richtig ContentPresenter –
ASh
Durch die Neudefinition der Vorlage des Labels, die Sie neu erstellen, was das Steuerelement Label in der Schnittstelle definiert. Ihr TextBlock ist nicht Teil der Vorlage, daher wird er nicht angezeigt, da er nicht mehr in der Baumstruktur vorhanden ist. – nkoniishvt
Ich möchte eigentlich Text und Bild nebeneinander hinzufügen. Vorher habe ich versucht, TextBox zu verwenden. Aber ich kann dem TextBox-Text kein Bild hinzufügen. Also habe ich den Textblock benutzt, damit ich jedes Bild oder Text hinzufügen kann. Ich kann Bild oder Text zu TextBlocks Inlines hinzufügen. Wo liege ich falsch? – MLElyakan