WPF: Binden DisplayMemberPath in eine combobox-Komponente auf das Element

Ok, das ist irgendwie seltsam, aber das ist im Grunde das, was ich brauche. Ich habe ein WPF-Steuerelement, das gebunden ist, um ein Document-Objekt. Das Dokument-Objekt verfügt über eine Seiten-Eigenschaft. Also in meinem ViewModel, ich habe eine CurrentDocument-Eigenschaft, und eine CurrentPage-Eigenschaft.

Nun, ich habe eine combobox, die ich gebunden haben, um die CurrentDocument.Pages-Eigenschaft und aktualisiert die CurrentPage-Eigenschaft.

<ComboBox ItemsSource="{Binding CurrentDocument.Pages}"
    DisplayMemberPath="???"
    SelectedItem="{Binding CurrentPage, Mode=TwoWay}">
</ComboBox>

Mit mir so weit? All dies ist in Ordnung, außer dass ich brauche den DisplayMemberPath zu zeigen, "Seite 1", "Seite 2", etc.....

Ich habe versucht, erstellen einen Konverter wie diesen:

public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
    string pageNumber = "Page {0}";
    return string.Format(pageNumber, value);
}

Und versuchte sich zu binden DisplayMemberPath es so:

DisplayMemberPath="{Binding RelativeSource={RelativeSource Self}, Path=Index, Converter={StaticResource pgTitleConv}}"

Aber es immer noch nicht zeigen, bis in das Kombinationsfeld text!!!

Gibt es keinen "Index" - Eigenschaft, aber ich weiß nicht, wie dies zu tun...Wie kann ich Zugriff auf den index des Elements, das die combobox ist die Bindung an...??????

InformationsquelleAutor Jeffrey T. Whitney | 2009-07-27

Schreibe einen Kommentar