Solved

How do I populate specific columns of a datagrid view from as list object

Posted on 2010-08-30
2
435 Views
Last Modified: 2012-05-10
Hello,

I know how to populate a datagridiew via a list object by setting its datasource to the list object as in
mydatagridview.datasource = mylist

However, I've now created a datagridview by adding the following columns at design time.  The name and Description columns are populated by the listobject. I want to allow the user to be able to enter data in the Sheet ID and to view details via the view details button located in the ViewDetails column of the datagridview.  
1. I'm not sure how to assign the name and description returned by list object to the correct column and how to permit the user to be able to make changes in a specific column of a datagrid view
Name
Description
SheetId
Export (checkbox)
ViewDetail (button)
0
Comment
Question by:chtullu135
2 Comments
 
LVL 18

Accepted Solution

by:
John (Yiannis) Toutountzoglou earned 500 total points
Comment Utility
you can reffer to a Cell value like this
1.Me.DatagridView.Rows(e.RowIndex).Cells("Name").FormattedValue
2.Me.DatagridView.Rows(e.RowIndex).Cells("Description").FormattedValue
Now about your button column try this

Private WithEvents frm as Form

Private Sub MyDataGridView_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles MyDataGridView.CellClick

        Try

            Dim row As DataGridViewRow

            For Each row In Me.MyDataGridView.Rows

                If Not row.IsNewRow Then

                    If e.ColumnIndex >= 0 Then

                        If MyDataGridView.Columns(e.ColumnIndex).Name = _

                    "ButtonColumn" Then

                     If frm Is Nothing Then

                                frm = New DetailsForm

                                frm.StartPosition = FormStartPosition......

                                

                                frm.FormBorderStyle = Windows.Forms.FormBorderStyle.None

                                frm.Show()



                            End If

                            



                           End if

                    End If

                End If

            Next

        Catch ex As Exception

        End Try



    End Sub

Open in new window

0
 

Author Comment

by:chtullu135
Comment Utility
Hello,
I kept at it and came up with this solution which seems to work.  However, I will be giving you credit for code you came up with.  It'll prove usefull and I thank you again for your help
Private Sub PopulateSelectTab()

        Dim retrievedTabList As New List(Of DatasetGroup)



        Try

            dgvDatasetGroups.DataSource = DataSetGroupDB.GetDatasetGroupList

            

            Dim buttons As New DataGridViewButtonColumn()

            With buttons

                .HeaderText = "ViewDetails"

                .Text = "ViewDetails"

                .Name = "Details"

                .UseColumnTextForButtonValue = True

                .AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells

                .FlatStyle = FlatStyle.Standard



                .DisplayIndex = 0

            End With

            dgvDatasetGroups.Columns.Add(buttons)

            Dim checkboxes As New DataGridViewCheckBoxColumn

            With checkboxes

                .HeaderText = "Export"

                .Name = "Export"

                .AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells

                .FlatStyle = FlatStyle.Standard

                .DisplayIndex = 1

            End With



            dgvDatasetGroups.Columns.Add(checkboxes)

            dgvDatasetGroups.Columns(0).Visible = False

            dgvDatasetGroups.Columns(4).Visible = False

            dgvDatasetGroups.Columns(5).Visible = False

            dgvDatasetGroups.Columns(6).Visible = False

            dgvDatasetGroups.Columns(0).ReadOnly = True

            dgvDatasetGroups.Columns(1).ReadOnly = True

            dgvDatasetGroups.Columns(2).ReadOnly = True

            dgvDatasetGroups.Columns(4).ReadOnly = True

            dgvDatasetGroups.Columns(5).ReadOnly = True

            dgvDatasetGroups.Columns(6).ReadOnly = True



        Catch ex As Exception

            MessageBox.Show(ex.Message, ex.GetType.ToString)

        End Try



    End Sub

Open in new window

0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Microsoft Reports are based on a report definition, which is an XML file that describes data and layout for the report, with a different extension. You can create a client-side report definition language (*.rdlc) file with Visual Studio, and build g…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now