How to add editable texbox column into detail view?

Hello

I've created a MasterDetailView datagrid. The detailsview is binded to model


public class OrderDetail

{

public string Name {get;set;}

public int Amount {get;set;}

}


I need to select multiple rows in detail view.


Now i've got some questions:

  1. How to make Amount colum in detailsview editable?
  2. How to add editable textbox column, and button column to detail view?



1 Reply

VS Vijayarasan Sivanandham Syncfusion Team August 24, 2021 02:42 PM UTC

Hi James,

Thank you for contacting Syncfusion Support.

Please find answer for your queries below 
Queries 
Solutions 
 
I need to select multiple rows in detail view. 

In two incidents under your Direct trac account contains same query. So, we request you to have further follow-up with that forum 168299. 
 
 
How to make Amount colum in detailsview editable? 
 


 
Your requirement can be achieved by enable the AllowEditing property in SfDataGrid. Please refer the below code snippet, 
 
<syncfusion:SfDataGrid x:Name="dataGrid" 
                                         AllowEditing="True" 
                                       AutoGenerateColumns="False" 
                                       AutoGenerateRelations="False"                                       
                                       ItemsSource="{Binding Path=OrdersDetails}" > 
            <syncfusion:SfDataGrid.DetailsViewDefinition> 
                <syncfusion:GridViewDefinition RelationalColumn="OrderDetails"> 
                    <syncfusion:GridViewDefinition.DataGrid> 
                        <syncfusion:SfDataGrid x:Name="FirstDetailsViewGrid" AllowEditing="True" AutoGenerateColumns="False"> 
                            <syncfusion:SfDataGrid.Columns> 
                                <syncfusion:GridNumericColumn AllowEditing="True" MappingName="Amount" TextAlignment="Right" /> 
                            </syncfusion:SfDataGrid.Columns> 
                        </syncfusion:SfDataGrid> 
                    </syncfusion:GridViewDefinition.DataGrid> 
                </syncfusion:GridViewDefinition> 
            </syncfusion:SfDataGrid.DetailsViewDefinition> 
</syncfusion:SfDataGrid> 
 
 
For more information related to Editing, please refer the below user guide documentation link,

UG Link: https://help.syncfusion.com/wpf/datagrid/master-details-view#defining-properties-for-detailsviewdatagrid 


 
 
 
 
How to add editable textbox column detail view? 
 

Your requirement can be achieved by adding the GridTextColumn in SfDataGrid. GridTextColumn derived from GridTextColumnBase which hosts TextBox in edit mode. Please refer the below code snippet, 
 
<syncfusion:SfDataGrid x:Name="dataGrid" 
                                       AutoGenerateColumns="False" 
                                       AutoGenerateRelations="False"                                       
                                       ItemsSource="{Binding Path=OrdersDetails}" > 
            <syncfusion:SfDataGrid.DetailsViewDefinition> 
                <syncfusion:GridViewDefinition RelationalColumn="OrderDetails"> 
                    <syncfusion:GridViewDefinition.DataGrid> 
                        <syncfusion:SfDataGrid x:Name="FirstDetailsViewGrid" AllowEditing="True" AutoGenerateColumns="False"> 
                            <syncfusion:SfDataGrid.Columns> 
                                <syncfusion:GridTextColumn MappingName="OrderID" /> 
                            </syncfusion:SfDataGrid.Columns> 
                        </syncfusion:SfDataGrid> 
                    </syncfusion:GridViewDefinition.DataGrid> 
                </syncfusion:GridViewDefinition> 
            </syncfusion:SfDataGrid.DetailsViewDefinition> 
</syncfusion:SfDataGrid> 


 
For more information related to GridTextColumn, please refer the below user guide documentation link,

UG Link: https://help.syncfusion.com/wpf/datagrid/column-types#gridtextcolumn

https://help.syncfusion.com/wpf/datagrid/column-types#customize-column-renderer 
 




 
How to add button column to detail view? 
 
 
Your requirement can be achieved by loaded the Button has CellTemplate in GridTemplateColumn in SfDataGrid. Please refer the below code snippet, 
 
<syncfusion:SfDataGrid x:Name="dataGrid" 
                                       AutoGenerateColumns="False" 
                                       AutoGenerateRelations="False"                                       
                                       ItemsSource="{Binding Path=OrdersDetails}" > 
            <syncfusion:SfDataGrid.DetailsViewDefinition> 
                <syncfusion:GridViewDefinition RelationalColumn="OrderDetails"> 
                    <syncfusion:GridViewDefinition.DataGrid> 
                        <syncfusion:SfDataGrid x:Name="FirstDetailsViewGrid" AllowEditing="True" AutoGenerateColumns="False"> 
                            <syncfusion:SfDataGrid.Columns> 
                                 <syncfusion:GridTemplateColumn MappingName="CustomerID"> 
                                    <syncfusion:GridTemplateColumn.CellTemplate> 
                                        <DataTemplate> 
                                            <Button x:Name="btnButton" 
                                           Command="{Binding  Path=DataContext.ButtonCommand,                  
                                           RelativeSource={RelativeSource AncestorLevel=2,  
                                           AncestorType=syncfusion:SfDataGrid}}"  
                                           CommandParameter="{Binding ElementName=btnButton}" 
                                           syncfusion:VisualContainer.WantsMouseInput="True" 
                                           syncfusion:FocusManagerHelper.FocusedElement="True" 
                                           Content="{Binding CustomerID}" /> 
                                        </DataTemplate> 
                                    </syncfusion:GridTemplateColumn.CellTemplate> 
                                </syncfusion:GridTemplateColumn> 
                            </syncfusion:SfDataGrid.Columns> 
                        </syncfusion:SfDataGrid> 
                    </syncfusion:GridViewDefinition.DataGrid> 
                </syncfusion:GridViewDefinition> 
            </syncfusion:SfDataGrid.DetailsViewDefinition> 
</syncfusion:SfDataGrid> 
 
For more information related to GridTemplateColumn, please refer the user guide documentation, 
 
 
Please let us know if you have any concerns in this.

Regards,
Vijayarasan S 


Loader.
Up arrow icon