Quantcast
Channel: Windows Forms Data Controls and Databinding forum
Viewing all articles
Browse latest Browse all 2535

Add rows to DataGridView bound from XML File?

$
0
0

Hi there,

OK, so I've read this same question asked over and over but all the answers talk about adding rows to the datatable that is bound to the dataset.  So, in my case, I can't find any code where I am creating a datatable.   I do create a DataSet but not a datatable.  I can delete a row (see below) but my dataset does not have an addnew method.

private DataSet AddressBookDataSet = new DataSet();
        private string strAddressBookPath = "P:\\Visual Studio\\Projects\\SecureSend\\AddressBook.xml"

 public AddressBook()
        {
            InitializeComponent();
            datagridaddressbook.DataBindingComplete += new DataGridViewBindingCompleteEventHandler(datagridaddressbook_DataBindingComplete);
            datagridaddressbook.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(datagridaddressbook_CellClick);
            DataGridViewCellStyle cell_style = new DataGridViewCellStyle();
            cell_style.BackColor = Color.LightGreen;
            cell_style.Format = "C2";
            AddressBookDataSet.ReadXml(strAddressBookPath);
            datagridaddressbook.DataSource = AddressBookDataSet;
            datagridaddressbook.DataMember = "details";
            datagridaddressbook.Columns[0].DefaultCellStyle = cell_style;
            datagridaddressbook.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            datagridaddressbook.Columns[0].HeaderText = "Email";
            datagridaddressbook.Columns[1].HeaderText = "First Name";
            datagridaddressbook.Columns[2].HeaderText = "Last Name";
            datagridaddressbook.Columns[3].HeaderText = "Company";
            txtEmail.Focus();
       }
private void btnDelete_Click(object sender, EventArgs e)
        {
            if (datagridaddressbook.SelectedRows.Count > 0)
            {
                int selectedRowCount = this.datagridaddressbook.SelectedRows.Count;

                while (selectedRowCount > 0)
                {
                    DataGridViewRow dgv_r = this.datagridaddressbook.SelectedRows[0];
                    this.datagridaddressbook.Rows.Remove(dgv_r);
                    selectedRowCount--;
                }
                AddressBookDataSet.WriteXml(strAddressBookPath);
                AddressBookDataSet.AcceptChanges();

            }
            else
            {
                MessageBox.Show("Please select a contact to delete", "No contact selected", MessageBoxButtons.OK);
            }

        }

Any help would be greatly appreciated...

Thanks, Chris


Viewing all articles
Browse latest Browse all 2535

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>