0

ビューモデルに、バインドしたいパブリック定数文字列があります

sys:string

以下のxamlスニペット内:

<ComboBox.ItemsSource>
    <CompositeCollection>
       <sys:String></sys:String>
       <CollectionContainer Collection="{Binding VMCollection, Source={StaticResource proxy}}" />
    </CompositeCollection>
 </ComboBox.ItemsSource>

Stringにcontentプロパティなどがあれば簡単ですが、これを行うための最良の方法を見つけようとしているだけです。

4

1 に答える 1

2

個人的には、とにかくViewModelでこれらのオプション(利用可能)を組み合わせる必要があるように思われます。(これらのオプションは、ユーザーに「提示」する必要がありますか?このためのまったく新しいUIを作成した場合でも、オプションは同じですか?)

しかし、あなたの質問に答えるために。

<Window ...
...
xmlns:local="clr-namespace:MyNamespace">

<ComboBox>
        <ComboBox.ItemsSource>
            <CompositeCollection>
                <x:StaticExtension Member="local:Constants.MyConst" />
                <core:String>1</core:String>
                <core:String>2</core:String>
                <core:String>3</core:String>
            </CompositeCollection>
        </ComboBox.ItemsSource>
    </ComboBox>

public static class Constants
{
    public static string MyConst
    {
        get
        {
            return "asd";
        }
    }
}

これは動作します

于 2013-01-25T22:36:15.703 に答える