WPF ListView вопрос - PullRequest
       6

WPF ListView вопрос

0 голосов
/ 16 июня 2009

это мой первый вопрос здесь. Я начинаю с WPF, и я застрял. Вот проблема: У меня есть ListView следующим образом:

<UserControl.Resources>
    <DataTemplate x:Key="FirstCell">
        <StackPanel Orientation="Horizontal">
            <CheckBox Margin="2"></CheckBox>
        </StackPanel>
    </DataTemplate>
</UserControl.Resources>

<ListView Name="lvRights">
    <ListView.View>
        <GridView>
            <GridViewColumn Width="100" Header="Select" CellTemplate="{StaticResource FirstCell}"/>
            <GridViewColumn Width="200" Header="Right" DisplayMemberBinding="{Binding Path=Name}" />
        </GridView>       
    </ListView.View>
</ListView>

Я связываю список с набором «ролей», которые имеют только Id и Name. Я использую этот DataTemplate для отображения флажка в первом столбце.

А вот и вопрос:

Как я могу узнать во время выполнения, установил ли пользователь один из флажков? В свойстве .Items списка есть роли, но я не могу получить информацию о первом столбце.

У меня такое ощущение, что это ОЧЕНЬ просто, но почему-то мне не хватает ответа.

10x заранее.

1 Ответ

1 голос
/ 16 июня 2009

Вы можете либо

1) добавьте обработчик кликов к флажку в шаблоне. В приведенном ниже коде вы можете привести DataContext флажка обратно к роли, чтобы выяснить, какая это.

2) Вы можете добавить какое-либо логическое свойство в свой класс Role. Затем вы можете привязать свойство IsChecked флажка к этому логическому свойству. Вам может понадобиться связывающий преобразователь для преобразования между логическим и проверенным свойством

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