Как включить / отключить TextBox в соответствии с ComboBox в ListView - PullRequest
1 голос
/ 25 декабря 2011

Можно ли включить / отключить TextBox в соответствии с выбранным значением ComboBox (например, включить его, если выбрано значение «От до»?

<ListView Height="120" HorizontalAlignment="Left" Margin="19,92,0,0"
          VerticalAlignment="Top" Width="500" 
          SelectionMode="Multiple"
          ItemsSource="{Binding Products}">
    <ListView.View>
        <GridView>
            <!--another columns-->
            <GridViewColumn Header="Selection Mode">
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                        <ComboBox Width="70" Name="SelectionMode">
                            <ComboBoxItem Content="From To" IsSelected="True" />
                            <ComboBoxItem Content="List" />
                        </ComboBox>
                    </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
            <GridViewColumn>
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                        <TextBox Width="70"></TextBox>
                    </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
        </GridView>
    </ListView.View>
</ListView>

1 Ответ

1 голос
/ 25 декабря 2011

Я бы посоветовал вам использовать значения ComboBoxItem вместо содержимого. Вам нужно написать привязку, которая будет связывать ваш комбобокс SelectedValue (см. Мое предложение) с Enabled вашего текстового поля. При привязке будет использоваться конвертер (IValueConverter), который будет возвращать True или False в зависимости от переданного значения SelectedValue - на основании вашего запроса, если SelectedValue == 'FromTo', ваш конвертер вернет True, в противном случае False.

Я бы также предложил вам использовать объекты, поддерживая ваши элементы пользовательского интерфейса, что, безусловно, является более чистым способом ведения дел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...