0

私はViewModel2つのコレクションプロパティを持っています。DataContextこれに設定されているページのフォームフィールドに入力するために使用するコレクションの1つViewModel。このフォームには、コレクションが入力されているフィールドの中に、他のComboBoxコレクションを入力したいものもあります。

グリッドを使用してレイアウトを行います。このグリッドDataContextは最初のコレクションに設定されています。グリッドの外側にあるときはComboBox、2番目のコレクションで簡単に埋めることができます。しかし、それがグリッドにあるときにそうしようとすると、それを成し遂げることができないようです。

コードスニペットでは、グリッドをに設定しDataContextましたItemTypes。フィールドからItemTypes値を取得できます。ComboBoxただし、他のコレクションから値を取得する必要があります。

<Grid DataContext="{Binding ItemTypes}">
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>

        <TextBlock Text="Name:" />
        <TextBox Grid.Column="2" Text="{Binding Name}" />

        <TextBlock Grid.Row="1" Text="Description:" />
        <TextBox Grid.Column="1" Grid.Row="1" Text="{Binding Description}" />

        <TextBlock Grid.Row="2" Text="Manufacturer:" />
        <ComboBox Grid.Column="1" Grid.Row="2"  />

        <TextBlock Grid.Row="3" Text="Short Name:" />
        <TextBox Grid.Column="1" Grid.Row="3" Text="{Binding ShortName}" />

        <TextBlock Grid.Row="5" Text="Weight:"/>
        <TextBox Grid.Column="1" Grid.Row="5" Text="{Binding Weight}" />
    </Grid>
4

0 に答える 0