Hierarchical Data Grid View

1003
Hierarchical Data Grid View 5,5/10 1621 reviews
  1. Clear Data Grid View
  2. Hierarchical Data Grid View

I want to display child rows in the datagrid after the + sign is selected (like grouping & outlining in excel). This is automatic in infragistic grids but when i did in asp (no more infragi.

Link for csharp, asp.net, ado.net, dotnet basics and sql server video tutorial playlists Link for text version of this video In this video, we will discuss about drilling down and displaying hierarchical data in gridview controls using objectdatasource control. We will be using the following 3 database tables for this demo. TblContinents 2. TblCountries 3. When the page loads, a gridview should display the list of all continents available in tblContinents table 2.

When a 'Select' button is clicked against a continent, all the countries belonging to the selected continent should be displayed in another gridview. Along the same lines, when a 'Select' button is clicked against a country, all the cities belonging to the selected country should be displayed in another gridview.

Clear Data Grid View

Use sql script from Part 34 using the link below to create and populate the required tables. To use objectdatasource controls, to retrieve continents, countries and cities data, we need to create respective data access layer class files.

Step 1: Implement ContinentDataAccessLayer.cs. Step 2: Implement CountryDataAccessLayer.cs. Step 3: Implement CityDataAccessLayer.cs. Step 4: Build your solution, so that the respective data access layer classes are compiled. Step 5: Drag and drop 3 gridview controls and 3 Objectdatasource controls on webform1.aspx. Step 6: Configure ObjectDataSource1 control to retrieve data from ContinentDataAccessLayer. Use GetAllContinents as the SELECT method.

Data grid view in c#

Step 7: Asscociate ObjectDataSource1 control with Gridview1 control. Setp 8: From GridView1 - GridView Tasks pane, please make sure 'Enable selection' checkbox is checked. Step 9: Configure ObjectDataSource2 control to retrieve data from CountryDataAccessLayer. Use GetCountriesByContinent(int ContinentId) as the SELECT method. The value for the parameter - ContinentId should come fromt the selected row in GridView1 control.

Hierarchical Data Grid View

Step 10: Asscociate ObjectDataSource2 control with Gridview2 control. Step 11: From GridView2 - GridView Tasks pane, please make sure 'Enable selection' checkbox is checked. Step 12: Configure ObjectDataSource3 control to retrieve data from CityDataAccessLayer.

Use GetCitiesByCountryId(int CountryId) as the SELECT method. The value for the parameter - CountryId should come fromt the selected row in GridView2 control. Step 13: Asscociate ObjectDataSource3 control with Gridview3 control. Step 14: Flip the webform to HTML source mode and set GridView1 DataKeyNames property to 'ContinentId' GridView2 DataKeyNames property to 'CountryId'.

I am trying to construct a datagridview that will show a number of rows with a particular set of fields, but also allow me to show some 'subrows' ie rows that can be expanded below the parent row in question (if that parent row has these children - part of the datasoruce) the only real problem is that the expanded rows will have completely different fields(columns) is this possible with a standard datagridview in a windows form? I am presuming somehow I would have to shoehorn in a new datagridview in a row of the parent grid. We do have the Syncfusion suite which includes the gridgroupingcontrol. But after much hair pulling and other pains.

I have given up on that completely. Short answer: No. You need a custom component for this. There are a lot of good efforts out there on making a hierarchical treeview. Like in the CodeProject article or from Component One (paid).

I understand you want different fields on the subnodes though, and I'm unsure to what extent these controls support that. I know FlexGrid support some customization of columns for different rows, but it will probably involve quite some manual work - databinding is not well supported.

Finally, you might want to consider if your idea of a customized GridView is the best approach to your problem in the first place. Could a Master-Detail-view be a better approach? PS: I'm not affiliated with ComponentOne, but I've used FlexGrid in a project.

This entry was posted on 03.10.2019.