Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> получение данных из комбобоксов внутри ListView 
:(
    Опции темы
nikich92
Дата 25.4.2013, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 7.6.2012

Репутация: нет
Всего: нет



всем привет. Подскажите пожалуйста, как получить SelectedValue каждого из комбобоксов, которые находятся внутри ListView?
Код

 <Grid>
        <Grid.RowDefinitions>
            <RowDefinition/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <ListView x:Name="lView" ItemsSource="{Binding ItemsLW}" Grid.Row="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Margin="3">
            <ListView.View>
                <GridView x:Name="grView">
                    <GridViewColumn Header="Столбец1" Width="Auto" x:Name="col1">
                        <GridViewColumn.CellTemplate>
                            <DataTemplate >
                                <StackPanel Orientation="Horizontal">
                                <TextBlock Text="{Binding TextForTb}" Margin="5,0,5,0"></TextBlock>
                                <ComboBox Width="Auto" MinWidth="80" ItemsSource="{Binding Cols}" SelectedIndex="0" >
                                </ComboBox>
                                </StackPanel>
                            </DataTemplate>
                        </GridViewColumn.CellTemplate>
                    </GridViewColumn>
                    <GridViewColumn Header="Столбец2" Width="Auto" x:Name="col2">
                        <GridViewColumn.CellTemplate>
                            <DataTemplate>
                                <ComboBox Name="cbVars" Width="Auto" MinWidth="80" ItemsSource="{Binding Variants}" SelectedItem="{Binding SelectedItem}"></ComboBox>
                            </DataTemplate>
                        </GridViewColumn.CellTemplate>
                    </GridViewColumn>
                </GridView>
            </ListView.View>
        </ListView>
        <StackPanel Grid.Row="1" HorizontalAlignment="Stretch" FlowDirection="RightToLeft" Orientation="Horizontal">
            <Button  Width="50" VerticalAlignment="Center" Content="Отмена" Margin="5,0,0,0" IsCancel="True"></Button>
            <Button x:Name="btnOK"  Width="50" VerticalAlignment="Center" Content="ОК" Margin="5" Click="btnOK_Click"></Button>
        </StackPanel>
    </Grid>
</Window>

Окно выглядит вот так: 
user posted image
PM MAIL ICQ Skype   Вверх
dzaraev
Дата 29.6.2013, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 149
Регистрация: 12.1.2013

Репутация: нет
Всего: 1



SelectedValue - это dependency property, а значит можешь просто забиндить его на соответствующее свойство объекта, который устанавливается в DataContext'e элемента листа (т.е. на свойство того объекта, на который у тебя уже забинден TextBlock Text="{Binding TextForTb}").
Если ты хочешь именно "получить" и только "получать" значение SelectedValue, то просто выставь его биндингу свойство Mode=OneWayToSource. В этом случае биндинг будет только писать в твой объект, но не считывать.

Код XAML будет выглядеть примерно так:
Код

<ComboBox SelectedValue="{Binding SelectedValueForCB, Mode=OneWayToSource}" Width="Auto" MinWidth="80" ItemsSource="{Binding Cols}" SelectedIndex="0" >

А в класс, к которому уже принадлежат свойства TextForTb, Cols и т.п. добавится свойство SelectedValueForCB.
--------------------
Если вопрос решён - помечайте тему.  
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.0797 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.