Изменение видимости таблички данных на основе свойства контроля в другой карточке данных - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть два шаблона данных, как показано ниже:

<DataTemplate x:Key="crTTemplate" DataType="local:crTRow">
    <Grid Margin="0,2,0,2" HorizontalAlignment="Stretch">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" SharedSizeGroup="labels" />
            <ColumnDefinition MinWidth="120" />
        </Grid.ColumnDefinitions>
        <TextBlock Margin="6,0,5,0" VerticalAlignment="Center" HorizontalAlignment="Stretch" Grid.Column="0" Text="{Binding Path=RowDisplayName}" />
        <ComboBox VerticalAlignment="Center" HorizontalAlignment="Stretch" Grid.Column="1" ItemsSource="{Binding Path=Values}"
                   SelectedValue="{Binding SelectedValue, UpdateSourceTrigger=PropertyChanged}"
                   SelectedItem="{Binding SelectedValue, UpdateSourceTrigger=PropertyChanged}">                    
        </ComboBox>
    </Grid>
</DataTemplate>
<DataTemplate x:Key="crVTemplate" DataType="local:crVRow">
    <Grid Margin="0,2,0,2" HorizontalAlignment="Stretch"  >
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" SharedSizeGroup="labels" />
            <ColumnDefinition MinWidth="120" />
        </Grid.ColumnDefinitions>
        <TextBlock Margin="6,0,5,0" VerticalAlignment="Center" HorizontalAlignment="Stretch" Grid.Column="0" Text="{Binding Path=RowDisplayName}" />
        <local:NumericUpDownControl VerticalAlignment="Center" HorizontalAlignment="Stretch" Grid.Column="1" Value="{Binding SelectedValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
    </Grid>
</DataTemplate>

Эти шаблоны данных используются в групповом поле, как показано ниже:

<GroupBox Grid.Row="0" Padding="0,5,5,0"  HorizontalAlignment="Stretch" VerticalAlignment="Top" >
    <ItemsControl Grid.IsSharedSizeScope="True" Margin="5,0,0,0" ItemsSource="{Binding Path=CRRows}" ItemTemplateSelector="{StaticResource TempSelector}"/>
</GroupBox>

CRRows - это наблюдаемая коллекция, для которой я добавьте два элемента каждый из типов данных crTRow и crvRow. Я хочу контролировать видимость всего элемента управления, добавленного для crvRow, на основе значения поля со списком, выбранного в crTRow.

...