wpf - wie kann ich eine Abhängigkeit zwischen Expander innerhalb DataGrid- und einer der DataGridRow Eigenschaften

StackOverflow https://stackoverflow.com/questions/2417839

Frage

Dies ist eine allgemeine Frage. Und möglicherweise nicht spezifisch für Datagrids. Wie kann ich im Zusammenhang 2 Eigenschaften oder 2 verschiedene Elemente der Benutzeroberfläche / Kontrollen

Wie jedes DataGridRow einen Expander hat, und ich möchte, dass die IsExpanded Eigenschaft auf DataGridRow ausgewählte Ereignis abhängig sein.

Danke

War es hilfreich?

Lösung

Eine relative Quell Bindung kann ohne Bezugnahme auf das Quellenelement nach dem Namen zu binden zwei Eigenschaften verwendet werden. Dies ist besonders nützlich ist Stil.

Hier ist ein Beispiel für eine List-Box mit Gegenständen, die bei Auswahl erweitern.

<ListBox>
    <ListBox.ItemTemplate>
        <DataTemplate>
            <Expander
                Header="{Binding}"
                IsExpanded="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=ListBoxItem}, Path=IsSelected}">
                <TextBlock
                    Text="{Binding}" />
            </Expander>
        </DataTemplate>
    </ListBox.ItemTemplate>

    <sys:String>a</sys:String>
    <sys:String>b</sys:String>
    <sys:String>c</sys:String>
    <sys:String>d</sys:String>

</ListBox>

Wenn ich brauche eine Phantasie-Bindung, die ich regelmäßig einen Spickzettel von Nir geschrieben verwenden auf seinem Blog und in die referenzierte Stackoverflow Frage gibt es eine WPF-Spickzettel outhere? .

Hier ist der Spickzettel Link .

Wenn Sie jemals lesen Sie diese dank Nir.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top