17 Answers, 1 is accepted
0
Hi lam,
You should add a GridViewComboBoxColumn in RadGridView. Here is a sample code snippet:
Should you have any further questions, don't hesitate to ask.
Sincerely yours,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
You should add a GridViewComboBoxColumn in RadGridView. Here is a sample code snippet:
List<Item> items = new List<Item>(); |
items.Add(new Item(0, "zero")); |
items.Add(new Item(1, "one")); |
items.Add(new Item(2, "two")); |
items.Add(new Item(3, "three")); |
items.Add(new Item(4, "four")); |
GridViewComboBoxColumn combo = new GridViewComboBoxColumn("Product", ""); |
combo.DataType = typeof(int); |
combo.DataSource = items; |
combo.DisplayMember = "Name"; |
combo.ValueMember = "ID"; |
this.radGridView1.Columns.Add(combo); |
Should you have any further questions, don't hesitate to ask.
Sincerely yours,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
0
Bruce Lam
Top achievements
Rank 1
answered on 08 Sep 2009, 09:22 AM
Thanks Jack for helping me. and i have one more question about combobox in RadGridView how can i auto complete data in Combobox. I has tried but i cannot. Please help me.Thanks alot.
0
Hi lam,
Currently there is an issue when using combobox column with auto-complete. When using auto-complete to select the value, the cell value is not updated. We are working on this issue and it will be addressed in our upcoming release. You can turn the feature on when handling the CellEditorInitialized event:
Should you have any other questions, we will be glad to help.
Regards,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
Currently there is an issue when using combobox column with auto-complete. When using auto-complete to select the value, the cell value is not updated. We are working on this issue and it will be addressed in our upcoming release. You can turn the feature on when handling the CellEditorInitialized event:
void radGridView1_CellEditorInitialized(object sender, GridViewCellEventArgs e) |
{ |
RadComboBoxEditor editor = this.radGridView1.ActiveEditor as RadComboBoxEditor; |
if (editor != null) |
{ |
RadComboBoxEditorElement editorElement = (RadComboBoxEditorElement)editor.EditorElement; |
editorElement.AutoCompleteMode = AutoCompleteMode.SuggestAppend; |
editorElement.DropDownStyle = RadDropDownStyle.DropDown; |
} |
} |
Should you have any other questions, we will be glad to help.
Regards,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
0
Bruce Lam
Top achievements
Rank 1
answered on 10 Sep 2009, 09:51 AM
Thanks Jack for helping me. I want to validate new row When i add new row. But I cannot do that. I have used CellVatidating but it just validate just one cell . I want to when i input all cells it will be insert into but when i just input some cells and click enter it not validate some cells empty and it's also insert normally. Please help me to validate all cells , just insert into database when all field is inputed.
0
Hello lam,
You should use the RowValidating event in this case. Use the DataRowInfo property of GridViewNewRowInfo to get the actual cell values:
We are aware that the API is a bit confusing and we plan to improve it in one of our upcoming releases. Don't hesitate to write us, If you have any other questions.
Regards,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
You should use the RowValidating event in this case. Use the DataRowInfo property of GridViewNewRowInfo to get the actual cell values:
void radGridView1_RowValidating(object sender, RowValidatingEventArgs e) |
{ |
if (e.Row is GridViewNewRowInfo) |
{ |
GridViewDataRowInfo dataRowInfo = (GridViewDataRowInfo)((GridViewNewRowInfo)e.Row).DataRowInfo; |
if (dataRowInfo != null && dataRowInfo.Cells[0].Value == DBNull.Value || dataRowInfo.Cells[0].Value == null) |
{ |
e.Cancel = true; |
} |
} |
} |
We are aware that the API is a bit confusing and we plan to improve it in one of our upcoming releases. Don't hesitate to write us, If you have any other questions.
Regards,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
0
Bruce Lam
Top achievements
Rank 1
answered on 11 Sep 2009, 04:00 AM
Thanks for helping me I add GridViewComboBoxColumn in RadGridView when i add new record i cannot get valueMember of this Combobox i just get DisplayMember and FieldName. How can i get valueMember. and how can i recognize what GridViewComboboxColumn is belong to this column, when i use event cellformating to format this gridviewCoboboxColumn but when i change this it change all other GridViewComboboxColumn.
0
Hello lam,
I am not sure that I understand your question correctly. ValueMember is a property of GridViewComboBoxColumn. The Columns collection in RadGridView is of type GridViewDataColumn and maybe this cause the confusion. You should cast the desired column to GridViewComboBoxColumn type:
And yes, when you change any property of the column, it affects all cells that belong to this column. Please, specify more details about what is your intention. I will be glad to assist you further.
Best wishes,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
I am not sure that I understand your question correctly. ValueMember is a property of GridViewComboBoxColumn. The Columns collection in RadGridView is of type GridViewDataColumn and maybe this cause the confusion. You should cast the desired column to GridViewComboBoxColumn type:
string valueMember = ((GridViewComboBoxColumn)this.radGridView1.Columns[1]).ValueMember; |
And yes, when you change any property of the column, it affects all cells that belong to this column. Please, specify more details about what is your intention. I will be glad to assist you further.
Best wishes,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
0
Bruce Lam
Top achievements
Rank 1
answered on 12 Sep 2009, 01:58 AM
Hi Jack How can i catch event click to add new Row . because when i input all data for one row and afterthat i move mouse out and it add new row to grid but cannot add into database. Please help me
0
Hello lam,
The best practice in this case is to update the database when closing the form or when clicking on dedicated Update button. When using a table adapter, you can call its Update method. However, you can handle RowValidated event in this case. Here is a sample:
newRowInfo contains all entered values except for the CurrentColumn. The value of the CurrentColumn can be accessed by using the ActiveEditor.Value property. I admit, that this is a little bit complicated. We will provide a more convenient API in one of our upcoming releases.
I hope this helps. If you have any questions, please don't hesitate to ask.
Sincerely yours,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
The best practice in this case is to update the database when closing the form or when clicking on dedicated Update button. When using a table adapter, you can call its Update method. However, you can handle RowValidated event in this case. Here is a sample:
void radGridView1_RowValidated(object sender, RowValidatedEventArgs e) |
{ |
if (e.Row is GridViewNewRowInfo) |
{ |
GridViewDataRowInfo newRowInfo = (GridViewDataRowInfo)((GridViewNewRowInfo)e.Row).DataRowInfo; |
//... |
} |
} |
newRowInfo contains all entered values except for the CurrentColumn. The value of the CurrentColumn can be accessed by using the ActiveEditor.Value property. I admit, that this is a little bit complicated. We will provide a more convenient API in one of our upcoming releases.
I hope this helps. If you have any questions, please don't hesitate to ask.
Sincerely yours,
Jack
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
0
steve
Top achievements
Rank 1
answered on 08 Nov 2011, 12:19 AM
if
(!(e.Row
is
GridViewNewRowInfo))
return
;
With the new release 2011.2.11.831, adding rows pragmatically changed. When I clicked on the "Click here to add a new row", Row no longer is of type GridViewNewInfo and the cells don't open up for editing. Is there a new event I should use to get the data from the new row after it is created?
0
Hello Steve,
Since 2009 we changed the new row behavior to be more like MS DataGridView behavior. Now the actual data row is created when the validation process finishes or more exactly when the CellValidated event is processed. Now you can use GridViewNewRowInfo cell value directly. However, you can switch back to the old behavior by setting the AddNewBoundRowBeforeEdit property to true:
I am not sure about the exact scenario and that is why I would ask you to send me your application. I will research the case and I will try to find the best option.
I am looking forward to your reply.
Best wishes,
Jack
the Telerik team
Since 2009 we changed the new row behavior to be more like MS DataGridView behavior. Now the actual data row is created when the validation process finishes or more exactly when the CellValidated event is processed. Now you can use GridViewNewRowInfo cell value directly. However, you can switch back to the old behavior by setting the AddNewBoundRowBeforeEdit property to true:
this
.radGridView1.MasterTemplate.AddNewBoundRowBeforeEdit =
true
;
I am not sure about the exact scenario and that is why I would ask you to send me your application. I will research the case and I will try to find the best option.
I am looking forward to your reply.
Best wishes,
Jack
the Telerik team
Q2’11 SP1 of RadControls for WinForms is available for download (see what's new); also available is the Q3'11 Roadmap for Telerik Windows Forms controls.
0
steve
Top achievements
Rank 1
answered on 10 Nov 2011, 04:37 PM
Thanks Jack. I will try that this afternoon and if I cannot get it to work I will upload my code, well a sample project.
Stephen
Stephen
0
Hi Steve,
Thank you for the update. I am looking forward to your reply. If you have any other questions, do not hesitate to contact us.
All the best,
Jack
the Telerik team
Thank you for the update. I am looking forward to your reply. If you have any other questions, do not hesitate to contact us.
All the best,
Jack
the Telerik team
Q2’11 SP1 of RadControls for WinForms is available for download (see what's new); also available is the Q3'11 Roadmap for Telerik Windows Forms controls.
0
steve
Top achievements
Rank 1
answered on 14 Nov 2011, 04:43 PM
The issue ended up being that I was never setting the BeginEdit property. I am assuming that the older version this was automatically set when adding a new row. Now I have to treat the new row like a edit and it works just fine. Thanks.
0
Hi Steve,
I am glad to hear that the issue is solved now. If you have any other questions, please do not hesitate to contact us.
Regards,
Jack
the Telerik team
I am glad to hear that the issue is solved now. If you have any other questions, please do not hesitate to contact us.
Regards,
Jack
the Telerik team
Q2’11 SP1 of RadControls for WinForms is available for download (see what's new); also available is the Q3'11 Roadmap for Telerik Windows Forms controls.
0
Muthu
Top achievements
Rank 1
answered on 07 Nov 2012, 06:58 AM
Hi,
I have a GridViewComboBoxColumn column and my value member is int field and display member is string column and my DropDownStyle is DropDown. When I come to the GridViewComboBoxColumn column through tab my focus will be there. Note that cursor will not blink inside the cell. But cell is selected. In this time If I press a letter ex. 'A', it has to show me records only which has 'A'. But it is giving object reference error. Pl find image attached.
How to solver that. I want to give filter option. Help me.
I have a GridViewComboBoxColumn column and my value member is int field and display member is string column and my DropDownStyle is DropDown. When I come to the GridViewComboBoxColumn column through tab my focus will be there. Note that cursor will not blink inside the cell. But cell is selected. In this time If I press a letter ex. 'A', it has to show me records only which has 'A'. But it is giving object reference error. Pl find image attached.
How to solver that. I want to give filter option. Help me.
0
Hi Muthu,
I was not able to reproduce the described issue using our latest release - Q3 2012. Maybe there is something specific in your application. Please, open a new support ticket and send us your project. This will allow us to investigate the issue in detail and provide you with a proper solution.
I am looking forward to your project.
Greetings,
Jack
the Telerik team
I was not able to reproduce the described issue using our latest release - Q3 2012. Maybe there is something specific in your application. Please, open a new support ticket and send us your project. This will allow us to investigate the issue in detail and provide you with a proper solution.
I am looking forward to your project.
Greetings,
Jack
the Telerik team