PDA

View Full Version : فیلتر روی گریدویو



asemaneiran
دوشنبه 07 فروردین 1391, 13:26 عصر
سلام
و سپاس از راهنمایی های همه مهندسین محترم
من یک فرم اصلی دارم که در اون یک کلید با نام فیلتر دارم و یک گریدویو
با زدن کلید فیلتر یک فرم باز می شه که در اون سه تا لینک لیبل دارم که با کلیک روی هر کدوم یک listbox باز می شه( و اطلاعات هر لیست متفاوت هست) با انتخاب هر ایتم از لیست . ایتم انتخاب شده در یک لیبل نمایش داده می شه. یک کلید بهمفثق هم در این فرم دارم که در نهایت با کلیک بر روی اون باید بر اساس موارد موجود در لیبل ها (موارد انتخابی از لیست ها) فیلتر روی ستون های گریدویو انجام بشه من برای هر لیبل این کد رو نوشتم اما بعدش نمی دونم باید چکار کنم. خواهش می کنم راهنمایی بفرمایید
(متن موجود در هر لیبل رو اول شکستم و بعد کوئری هایی نوشتم و با هم or کردم............؟؟؟؟؟؟؟


string[] a10 = lb1.Split(',');
for (int i10 = 0; i10 < a10.Length; i10++)
{
query += " OR ";
query += " Name = '" + a10[i10] + "'";
string s10 = a10[i10];
}
query += ")";
//==================================
queryFilter = query;
//==================================
publicvoidfillgrid_filter()
{
dgv.DataSource = amoozesh.Selectall(queryFilter);

}

اما روی And کد زیر خطای Syntax near And رو میده


publicstaticDataTableSelectall(string Conditions)
{
DataTabledt = newDataTable();
SqlConnection connection = newSqlConnection(database.GetConnectionString());
try
{
connection.Open();
stringsqlStatement = "SELECT * FROM amoozesh Where 1=1 AND " + Conditions;
SqlCommandsqlCmd = newSqlCommand(sqlStatement, connection);
SqlDataAdaptersqlDa = newSqlDataAdapter(sqlCmd);

sqlDa.Fill(dt);
returndt;

}
catch (System.Data.SqlClient.SqlException ex)
{
MessageBox.Show("Error");
}
finally
{
connection.Close();
}
returnnull;
}

where 1=1
یعنی یه جورایی اگر موجود نبو د هم اطلاعات رو بر گردونه(مثل اینه که بگی درست ها رو بر گردون و یا اگر اطلاعاتی نبود خطایی نده...)
دوم مشکل من هم توی همین یک خط کدی که اشاره فرمودید هست
و
نمی دونم چکار کنم...!
استاد راهنمایی کردند در این حالت and نباید تولید بشه...
خواهش می کنم راهنمایی کنید خیلی مهمه برام...!!