表示GridView在WPF中支持行编辑功能



我希望在WPF中添加gridview的行编辑功能,代码片段如下:

<ListView Margin="10" Name="lvUsers" Grid.Row="1">
<ListView.View>
<GridView>
<GridViewColumn Header="Name" Width="120" DisplayMemberBinding="{Binding Name}" />
<GridViewColumn Header="Age" Width="50" DisplayMemberBinding="{Binding Age}"/>
<GridViewColumn Header="Mail" Width="170">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Mail}" TextDecorations="Underline" Foreground="Blue" Cursor="Hand" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="Grade" Width="60" DisplayMemberBinding="{Binding Grade}" />
</GridView>
</ListView.View>
</ListView>

我已经看到了一些关于DataGrid的信息,但是如果有任何方法可以为gridview制作行编辑功能,非常感谢。

最简单的方法是将TextBlock改为TextBox

<DataTemplate>
<TextBox Text="{Binding Mail}" TextDecorations="Underline" Foreground="Blue" Cursor="Hand" />
</DataTemplate>

更好的方法是使用具有CellTemplateCellEditingTemplateDataGrid

<DataGrid>
<DataGrid.Columns>
<DataGridTemplateColumn Header="Mail">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Mail}" TextDecorations="Underline" Foreground="Blue" Cursor="Hand" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding Mail}" TextDecorations="Underline" Foreground="Blue" Cursor="Hand" />
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>

最新更新