0 امتیاز

سلام

در قسمت جستجو برنامه با مشکلی مواجه شده ام

ممنون میشم راهنمایی بفرمایید

 

جستجو به درستی انجام میشه و زمانی که مجدد روی دکمه جستجو کلیک میشه اطلاعات به دیتا گرید اضافه میشه

میخواستم اگر کاربر مجدد روی جستجو کلیک کرد دیتا گرید ابتدا پاک شده و مجدد پر شود

از دستور زیر هم استفاده کردم . دیتا گرید را پاک می کنه ولی دیگه اجازه ی پر کردن را نمی دهد

dataGridSearchManba.Columns.Clear();

متن قسمت جستجوی برنامه هم به شرح زیر ارسال می شود

        private void btnSearch_Click(object sender, EventArgs e)
        {
            
            connection.ConnectionString = @"Data Source=SAZGAR-PC;Initial Catalog=ManabeTahghiq;"
                                        + "Integrated Security=SSPI";
            command.Connection = connection;
            command.CommandText = "Exec searchManba @Cod ,@First_Name ,@Last_Name ,@OrgPosition";
            command.Parameters.Clear();
            command.Parameters.AddWithValue("@Cod", textBoxCodManba.Text);
            command.Parameters.AddWithValue("@First_Name", textBoxNameManba.Text);
            command.Parameters.AddWithValue("@Last_Name", textBoxFamilyManba.Text);
            command.Parameters.AddWithValue("@OrgPosition", textBoxPositionManba.Text);

            adapter.SelectCommand = command;
            adapter.Fill(dataset, "manbaSearch");

            connection.Open();
            reader = command.ExecuteReader();

            dataGridSearchManba.DataSource = dataset.Tables["manbaSearch"];


            reader.Close();
            connection.Close();


        }


 

3 پاسخ

0 امتیاز

سه کد زیر رو تست کنید :

dataGridView1.Rows.Clear();
dataGridView1.Refresh();
dataGridView.DataSource=null;
dataGridView.Rows.Clear();


 

DataSet.Clear();

 

کد خودتون و یا این کدهایی که بنده عرض کردم رو قبل از reader.close بنویسید و امتحان کنید
توسط (3,483 امتیاز) 6 13 87
تست کردم

جواب نداد
توسط (133 امتیاز) 1 3 12
0 امتیاز
شما باید دیتا رو پاک کنید نه گرید رو
ممنون میشم روشش رو هم بفرمایید
توسط (133 امتیاز) 1 3 12
0 امتیاز

این یک نمونه کد هست که من در برنامه خودم استفاده کردم  :

private void textSearchFilmName_TextChanged(object sender, EventArgs e)
        {
            Search();
        }

private void Search()
        {
            SqlCommand cmd = new SqlCommand();
            con.Open();
            cmd.Connection = con;
            
            if (StrDate != "") //بررسی خالی بودن تاریخ جهت شرکت در شرط جستجو
            {
                cmd.CommandText = "select * from TblRent where Customer Like N'%" + textSearchMoshtariName.Text + "%' and FilmName Like N'%" + textSearchFilmName.Text + "%' and DateBeginRent=N'" + StrDate + "'";
                           //"select * from TblRentMovie where   FilmName Like N'%" + textSearchFilmName.Text + "%' and FilmCountry Like N'%" + textSearchCountry.Text + "%' and Id Like N'" + textSearchCode.Text + "%'";
            }
            else
            {
                cmd.CommandText = "select * from TblRent where Customer Like N'%" + textSearchMoshtariName.Text + "%' and FilmName Like N'%" + textSearchFilmName.Text + "%'";
            }
            
            SqlDataAdapter da = new SqlDataAdapter();
            da.SelectCommand = cmd;
            DataTable dt = new DataTable();
            da.Fill(dt);
            con.Close();
            dataGridViewX1.DataSource = dt;

        }

 

سلام و تشکر

جواب سوالم را پیدا کردم

 

while (dataGridSearchManba.Rows.Count > 1)
                {
                    dataGridSearchManba.Rows.RemoveAt(0);
                }


 

توسط (133 امتیاز) 1 3 12
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,919 کاربر

دسته بندی ها

...