티스토리 뷰






using System;
using System.Data;
using System.Windows.Forms;

namespace NaverSample
{
    public partial class Form1 : Form
    {
        private NaverDataSet ourNaverDataSet;
        private NaverDataSetTableAdapters.AccountTableAdapter ourAccountTableAdapter;
        private NaverDataSetTableAdapters.TableAdapterManager ourTableAdapterManager;
        private BindingSource ourBindingSource;

        public Form1()
        {
            InitializeComponent();
            InitializeMyComponent();
        }

        private void InitializeMyComponent()
        {
            ourNaverDataSet = new NaverDataSet();
            ourAccountTableAdapter = new NaverDataSetTableAdapters.AccountTableAdapter();
            ourAccountTableAdapter.Fill(ourNaverDataSet.Account);

            ourTableAdapterManager = new NaverDataSetTableAdapters.TableAdapterManager();
            ourTableAdapterManager.BackupDataSetBeforeUpdate = false;
            ourTableAdapterManager.AccountTableAdapter = ourAccountTableAdapter;
            ourTableAdapterManager.UpdateOrder =
                NaverDataSetTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete;

            ourBindingSource = new BindingSource();
            ourBindingSource.DataSource = ourNaverDataSet;
            ourBindingSource.DataMember = "Account";
            this.dataGridView1.DataSource = ourBindingSource;
        }

        private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            dataGridView1.Rows[e.RowIndex].ErrorText = String.Empty;
        }

        private void dataGridView1_DataError(object sender, DataGridViewDataErrorEventArgs e)
        {
            dataGridView1.Rows[e.RowIndex].ErrorText = e.Exception.Message;
            e.Cancel = true;
        }

        private void toolStripButtonSave_Click(object sender, EventArgs e)
        {
            try
            {
                this.Validate();
                ourBindingSource.EndEdit();

                string method = "method2";
                switch (method)
                {
                    case "method1":
                        ourTableAdapterManager.UpdateAll(ourNaverDataSet);
                        break;
                    default:
                        NaverDataSet changes = (NaverDataSet)ourNaverDataSet.GetChanges();
                        if (changes != null)
                        {
                            int numRows = ourAccountTableAdapter.Update(changes);
                            MessageBox.Show("Updated " + numRows + " Rows", "Success");
                            ourNaverDataSet.AcceptChanges();
                        }
                        break;
                } // switch
            } // try
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                ourNaverDataSet.RejectChanges();
            }
        }

        private void toolStripButtonWork_Click(object sender, EventArgs e)
        {
            try
            {
                DataRow[] foundRows = ourNaverDataSet.Account.Select("", "Accessed ASC");
                foundRows[0]["Accessed"] = DateTime.Now;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                ourNaverDataSet.RejectChanges();
            }
        }
    }
}




공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함