کدها:

با دکمه F7 به بخش کد نویسی رفته بعد از متد  public frmBaseInfo یک متد به نام showButton جهت نمایش و عدم نمایش دکمه ها در زمان های مختلف اجرا با کد زیر می نویسیم:

private void showButton(bool flag)

        {

            txtFname.Enabled = flag;    // فعال یا غیر فعال کردن کادر متن جهت دریافت اطلاعات

            txtLname.Enabled = flag;    // فعال یا غیر فعال کردن کادر متن جهت دریافت اطلاعات

            pnlInsertEditSearchDelete.Visible = !flag;  // نمایش یا عدم نمایش دکمه های درج و .

            pnlMoveButton.Visible = !flag;      //  نمایش یا عدم نمایش دکمه های حرکت رکردها

            pnlSaveCancel.Visible = flag;     // نمایش یا عدم نمایش دکمه های ذخیره و انصراف

        }


جهت تست متد showButton ، متد frmBaseInfo به شکل زیر تغییر می دهیم:

   public frmBaseInfo()

        {

            InitializeComponent();

            pnlSaveCancel.Left=166;     // انتقال کادر دکمه های ذخیره و انصراف

            pnlSaveCancel.Top= 162;

            //  مخفی کردن دکمه های ذخیره و انصراف و نمایش سایر دکمه ها با فراخوانی متد

            showButton(false);   

        }


جهت استفاده از کلاس های OleDb با دستور using System.Data.OleDb  فضای نامی مربوطه را در بخش using ها اضافه می نماییم.


برای نمایش تمامی رکوردها چند متغیر سراسری در سطح فرم و چند متد باید نعریف کنیم توجه متغیر ها باید در بیرون از همه متدها و در کلاس فرم باشد مانند مثال:


 public partial class frmBaseInfo : Form

    {  

        /* در مسیر فایل اجرایی پروزه کیی شود مانند مثال Tel.mdb  توجه فایل   

        D:\TelePhone\TelePhone\bin\Debug     */

        string strConnection = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=tel.mdb";  

        OleDbConnection conn1;     // تعریف شئ برای اتصال به بانک

        OleDbCommand cmd1;         // تعریف شی برای اجرای دستورات

        OleDbDataAdapter da1;     // تعریف شی برای ایجاد ارتباط بین بانک اطلاعاتی و دیتاست

        DataSet ds;               // تعریف شی دیتاست 

        int recNo = 0;            // تعریف متغیر برای نگهداری شماره رکورد جاری

        int recCount=0;          // تعریف متغیر برای نگهداری نعداد رکوردهای جدول

        bool flagAdd = false, flagEdit = false;    

         // تعریف دو متغیر برای اینکه بدانیم کاربر کدام دکمه ها را انتخاب کرده است


  دستورات را در متد  frmBaseInfo  زیر دستور  InitializeComponent بنویسید.
توجه: دستورات قبلی که در این متد نوشته ایم را پاک نمی کنیم بلکه دستورات جدید را در محل مشخص شده اضافه می کنیم.
 
 public frmBaseInfo()
        {
            InitializeComponent();
            // Sql تعریف متغیر برای نگهداری دستورات  
            string sqlStatement = "select * from baseinfo"; 
             // تخصیص حافطه به شئ و بازکردن آن 
            conn1 = new OleDbConnection(strConnection);    
            cmd1 = new OleDbCommand(sqlStatement, conn1);  //  تخصیص حافظه به شئ و  تنظیم آن
            da1 = new OleDbDataAdapter(cmd1);              //  تخصیص حافظه به شئ و  تنظیم آن
            ds = new DataSet();                            //  تخصیص حافظه به شئ 
            //da1 کپی اطلاعات از بانک اطلاعاتی به دیتاست با از طریق شی
            da1.Fill(ds,"baseInfo");
            
            // تعداد کل رکوردها در متغیر ذخیره می شود 
            recCount = ds.Tables["baseInfo"].Rows.Count;  

           // اگر شماره رکوردی وجود داشت برای نمایش اولین آن دستور بعدی اجرا شود
            if (recCount>0)  
            FillTextBox();                                // فراخوانی متد برای خواندن اطلاعات از فیلدها به کادرهای متن
 توجه متد FillTextBox را جلوتر تعریف خواهیم نمود.//                                                                                       

تعریف متد FillTextBox برای انتقال اطلاعات از فیدهای رکورد به TextBox ها
راهنمایی : مکان تعریف متد بایذ  قبل از {{ بسته آخر صفحه باشد.

 private void FillTextBox()
        {
            txtId.Text = ds.Tables["baseInfo"].Rows[recNo]["Id"].ToString();
            txtFname.Text = ds.Tables["baseInfo"].Rows[recNo]["Fname"].ToString();
            txtLname.Text = ds.Tables["baseInfo"].Rows[recNo]["Lname"].ToString();
        }




مشخصات

آخرین ارسال ها

آخرین جستجو ها