2017-10-12 90 views
0

我要創建List View這樣的:WPF和MVVM:添加控件自動生成列表視圖

enter image description here

(雖然List View已經擁有多選功能,不需要複選框,我要添加他們不知道是什麼,如果持有Shift鍵有可能選擇多個項目誰也低,用戶體驗)

目前,我List View只包括IDFull Name列。數據通過根據MVVC概念創建的綁定顯示。

<ListView Name="DataTable" ItemsSource="{Binding Path=people}"> 
    <ListView.View> 
     <GridView> 
      <GridViewColumn Width="50px"> 
       <!-- This is column for checkboxes but it don't should be in header --> 
      </GridViewColumn> 
      <GridViewColumn Header="ID" 
          DisplayMemberBinding="{Binding PersonID, UpdateSourceTrigger=PropertyChanged}"> 
      </GridViewColumn> 
      <GridViewColumn Header="FullName" 
          DisplayMemberBinding="{Binding FullName, UpdateSourceTrigger=PropertyChanged}" /> 
      <GridViewColumn Width="50px"> 
       <!-- This is column for "Edit" buttons but it don't should be in header --> 
      </GridViewColumn> 
      <GridViewColumn Width="50px"> 
       <!-- This is column for "Delete" buttons but it don't should be in header --> 
      </GridViewColumn> 
     </GridView> 
    </ListView.View> 
</ListView> 

如何在每個非標題行中添加複選框和按鈕?

+1

在這裏看到:https://stackoverflow.com/questions/33756171/how-to-add-a-checkbox-column-to-a- listview-in-wpf-and-the-state-of-it – Clemens

+1

您可能正在尋找[DataGridTemplateColumn](https://msdn.microsoft.com/en-us/library/system.windows.controls.datagridtemplatecolumn (v = vs.110).aspx) – Filburt

+0

@Clemens,看起來像是。我會試試看。感謝您的參考! –

回答

1

你應該聲明CellTemplate有複選框:

<GridViewColumn Width="50px"> 
    <GridViewColumn.CellTemplate> 
     <DataTemplate> 
      <CheckBox IsChecked="{Binding MyProperty}"/> 
     </DataTemplate> 
    </GridViewColumn.CellTemplate> 
</GridViewColumn> 
+0

它會!謝謝你的回答! –