これは奇妙ですが、これは基本的に私がする必要があります。私はDocumentオブジェクトにバインドされているWPFコントロールを持っています。 DocumentオブジェクトにはPagesプロパティがあります。私のViewModelでは、私はCurrentDocumentプロパティとCurrentPageプロパティを持っています。WPF:コンボボックスのDisplayMemberPathをItemにバインドします
今、CurrentDocument.PagesプロパティにバインドしてCurrentPageプロパティを更新するコンボボックスがあります。
これまでの私とは?このすべてが.....など、私は「ページ1」を表示するようにDisplayMemberPathが必要であることを除いて
「2ページ」で結構です、私はこのようなコンバータを作成しようとした:
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
string pageNumber = "Page {0}";
return string.Format(pageNumber, value);
}
そして、次のようにDisplayMemberPathをバインドしようとしました:
DisplayMemberPath="{Binding RelativeSource={RelativeSource Self}, Path=Index, Converter={StaticResource pgTitleConv}}"
ただし、それでもコンボボックスのテキストには表示されません。
「インデックス」プロパティはありませんが、これを行う方法がわかりません...コンボボックスがバインドしているアイテムのインデックスにアクセスするにはどうすればいいですか?
は私の状況のための魅力のように働きました。 – JohnathanKong
+1素晴らしいトリック! – Olwaro
動作しますが、コンバータを使用するとパフォーマンスに影響します。上記のバインディングStringFormat機能を使用するように変更しました。例えば。 –
Darren