We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy.
Unfortunately, activation email could not send to your email. Please try again.

GridDataBoundGrid ComboBox Question

Thread ID:





2465 Jan 22,2003 06:46 AM Jan 23,2003 04:00 PM Windows Forms 4
Tags: GridControl
Kenneth Johnson
Asked On January 22, 2003 06:46 AM

I am setting a grid's datasource as follows: grid.DataSource = oDataTable; This works great. Columns and rows filled out. When I try to hook up the combobox droplist like this: grid.Model.ColStyles[colIndex].DataSource = oNewDataTable; grid.Model.ColStyles[colIndex].DisplayMember = "sDispMember"; grid.Model.ColStyles[colIndex].ValueMember = "sValMember"; then the data from the original datasource is no longer displayed in the cells. Also, after making a selection from a combobox list and moving to another cell, the cell changes from the displaying the selection to being empty again. Also, am I correct in thinking the method I'm using above for setting the combobox list will set all cells in the specified column? Does something like grid[row, col].DataSource set the combobox list for a specific cell? Thanks.

Administrator [Syncfusion]
Replied On January 22, 2003 02:02 PM

For a GridDataBoundGrid, you cannot use indexers to specify style properties for individual cells (other that the Text/CellValue property that is mapped back to your datasource). The reason is there is no storage to hold such properties in a griddataboundgrid. So, you cannot just set the DataSource for an individual cell. To set styles for columns in a GridDataBoundGird, the preferred way would be to either add GridBoundColumns for each column, and then use the StyleInfo member of the GridBoundColumn to set these column properties. Or, if you do not add GridBoundColumns, you can use the internal columns, GridDataBoundGrid.Binder.InternalColumns, and set the style properties in its StyleInfo member for each column.

Kenneth Johnson
Replied On January 23, 2003 06:12 AM

I'm now adding the GridBoundColumn's for each column in my DataTable, but getting the same results. When I do not try to bind a an ArrayList as the datasource for the combo list, the data is displayed in the grid. When I try to set the combo list datasource, the grid data is not displayed in the cells. I'm using the following code. for (int i=0; i

Kenneth Johnson
Replied On January 23, 2003 07:03 AM

I think I found my problem. The column is defined as type string, the DisplayMember being assigned is a string type, but the ValueMember I am assigning is an int. When I drop the assignment of the int ValueMember, everything is as expected. However, I need to keep track of the string displayed to the user and the underlying integer code assigned to the string. Any suggestions on how I can accomplish this?

Administrator [Syncfusion]
Replied On January 23, 2003 04:00 PM

Hi Ken, the combobox will try to save the integer value from the ValueMember into the column. That means your underlying datatable must accept this value. Make sure the column in your oDataTable is of type int and that the ValueMembers of the displayed foreign table are valid values for the underlying column from oDataTable. Stefan


This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.