2013-07-17 109 views
1

我有一個簡單的listview與gridview,我想獲得某些列的值。訪問ListView的網格單元格值

我的XAML

<ListView SelectionMode="Single" Margin="10,10,0,0" x:Name="activos" Height="211" VerticalAlignment="Top" HorizontalAlignment="Left" Width="555" SizeChanged="activos_SizeChanged" SelectionChanged="activos_SelectionChanged" IsSynchronizedWithCurrentItem="True"> 
    <ListView.Resources> 
     <ResourceDictionary> 
      <Style x:Key="hiddenStyle" TargetType="GridViewColumnHeader"> 
       <Setter Property="Visibility" Value="Collapsed"/> 
      </Style> 
      <Style TargetType="{x:Type CheckBox}" x:Key="DataGridCheckBox"> 
       <Setter Property="HorizontalAlignment" Value="Center" /> <Setter Property="HorizontalContentAlignment" Value="Center" /> <Setter Property="IsEnabled" Value="False" /> <Setter Property="Margin" Value="11 3" /> <Setter Property="VerticalAlignment" Value="Center" /> <Setter Property="VerticalContentAlignment" Value="Center" /> <Setter Property="Width" Value="{Binding RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type GridViewColumn}},Path=ActualWidth}" /> 
      </Style> 
     </ResourceDictionary> 
    </ListView.Resources> 
    <ListView.View> 
     <GridView x:Name="act_"> 
      <GridViewColumn Header="Code" Width="0" DisplayMemberBinding="{Binding coddiag}" HeaderContainerStyle="{StaticResource hiddenStyle}" /> 
      <GridViewColumn Header="Diagnóstico" Width="400" DisplayMemberBinding="{Binding diag}" /> 
      <GridViewColumn Header="Princip." Width="50"> 
       <GridViewColumn.CellTemplate> 
        <DataTemplate> 
         <CheckBox Style="{StaticResource DataGridCheckBox}" IsChecked="{Binding princi}" Focusable="False" IsHitTestVisible="False" Name="Complete" IsThreeState="False" BorderBrush="Black" Foreground="Black"></CheckBox> 
        </DataTemplate> 
       </GridViewColumn.CellTemplate> 
      </GridViewColumn> 
      <GridViewColumn Header="Fecha" Width="{x:Static System:Double.NaN}" DisplayMemberBinding="{Binding fecha, StringFormat='dd/MM/yyyy'}" /> 
     </GridView> 
    </ListView.View> 
</ListView> 

基本上我試圖做的是訪問GridViewColumn碼值,每當我改變選擇的行和存儲其價值。

我以爲它會像格[行,列]的東西更容易或類似的東西...但一些研究它看起來像我將需要使用其他方法後...

回答

1

你可以添加ListView.SelectedItem綁定您的視圖模型的屬性。您的視圖模型將跟蹤從該點選擇更改。所以當選擇的項目改變時,你會在這個屬性中獲得新的值。因此,您可以訪問視圖模型代碼中所選項目的任何屬性(列值)。