2013-06-27 65 views
0

我有一個ListView這是GridView作爲它的視圖。WPF GridView導出爲CSV?

請參見下面的示例代碼:

<ListView ItemsSource="{Binding Path=Employees}" > 
    <ListView.ItemContainerStyle> 
     <Style TargetType="{x:Type ListViewItem}"> 
      <Setter Property="Focusable" Value="False"/> 
     </Style> 
    </ListView.ItemContainerStyle> 

    <ListView.Resources> 
     <Style TargetType="{x:Type CheckBox}" x:Key="DataGridCheckBox"> 
      <Setter Property="HorizontalAlignment" Value="Center" /> 
      <Setter Property="HorizontalContentAlignment" Value="Center" /> 
      <Setter Property="IsEnabled" Value="True" /> 
      <Setter Property="Margin" Value="4" /> 
      <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> 
    </ListView.Resources> 

    <ListView.View> 
     <GridView x:Name="EmployeesGridView"> 
      <GridViewColumn Header="IsEligible"> 
       <GridViewColumn.CellTemplate> 
        <DataTemplate> 
         <CheckBox Style="{StaticResource DataGridCheckBox}" IsChecked="{Binding Path=IsSelected}"/> 
        </DataTemplate> 
       </GridViewColumn.CellTemplate> 
      </GridViewColumn> 

      <GridViewColumn Header="Name" > 
       <GridViewColumn.CellTemplate> 
        <DataTemplate> 
         <TextBlock> 
          <TextBlock> 
           <TextBlock Text="{Binding Path=Employee.Name}"/> 
          </TextBlock> 
         </TextBlock> 
        </DataTemplate> 
       </GridViewColumn.CellTemplate> 
      </GridViewColumn> 

      <GridViewColumn Header="Age"> 
       <GridViewColumn.CellTemplate> 
        <DataTemplate> 
         <TextBlock Text="{Binding Age}"/> 
        </DataTemplate> 
       </GridViewColumn.CellTemplate> 
      </GridViewColumn> 
     </GridView> 
    </ListView.View> 
</ListView> 

我如何將此數據導出到文件CSV。我沒有得到任何財產,我可以得到行在GridView

我該怎麼做。請建議。

+1

不是員工代表ListView中的項目嗎?您想要導出所有員工還是僅選擇一個員工? – KornMuffin

+0

我想要選擇一個。對於所有我可以使用DataContext。 –

回答

-1

您可以在ViewModel中創建一個SelectedPerson屬性,並將ListView.SelectedItem綁定到此屬性。