PDA

View Full Version : ضروری : فیلتر کردن



bahman.net
پنج شنبه 18 اسفند 1384, 01:48 صبح
با سلام خدمت همه دوستان
من یه جدول دارم که توی دیتا گرید نشان داده شده حالا میخوام از طریق یه تکست باکس
جدولم رو با فیلد شماره دانشجویی فیلتر کنم این عمل رو در محیط سی شارپ 2005 چگونه انجام بدم
از همه تون ممنونم

HO457
پنج شنبه 18 اسفند 1384, 02:08 صبح
از تابع select‌ میتونی استفاده کنی


expression = "Date > '1/1/00'";
dataset1.Tables[0].Select(expression);

bahman.net
جمعه 19 اسفند 1384, 01:03 صبح
از توجهتون ممنونم
ولی من در سی شاپ 2005 راه حل رو میخوام اگه کسی راه حلی داره ازش خیلی ممنون می شم لطفا" کمی دقیق تر توضیح بدین

Mehrafrooz
جمعه 19 اسفند 1384, 12:30 عصر
اگر از BindingSource استفاده می کنید می تونید از این روش استفاده کنید :


Your_TableBindingSource.Filter="Your_Field='Your_Ask'";

موفق باشید .

HO457
جمعه 19 اسفند 1384, 15:23 عصر
این روشی که گفتم توی C# 2005‌ جواب میده عزیز جان، ساختار دستور و نحوه استفادش هم واضح هست. اگر اطلاعات بیشتر میخوای از msdn استفاده کن.

مطهر
جمعه 19 اسفند 1384, 20:24 عصر
expression = "Date > '1/1/00'";
اینجا چی میشه نوشت. از دستورات SQL میشه استفاده کرد؟

bahman.net
یک شنبه 21 اسفند 1384, 00:31 صبح
از توجه همتون ممنونم قسمتی از مشکلم حل شد

once4ever
یک شنبه 21 اسفند 1384, 08:53 صبح
(بی ربط نیست )
اگه بخواهیم dataset رو به شکلی پر کنیم که از یک آرایه چک کنه اگه مقدار فیلد شماره دانشجویی برابر یکی از عناصر آرایه بود اونوقت اضافه کنه (فقط رکوردهایی اضافه کنه که مقدار فیلد تو آرایه باشه )
ممنون اینم توضیح بدید.

Mehrafrooz
یک شنبه 21 اسفند 1384, 14:38 عصر
من از این روش برای پر کردن دیتا گرید با داشتن آرایه ای از شماره دانشجویی استفاده میکنم . البته می تونید در if نه تنها شماره دانشجویی ، بلکه مشخصات دیگه ای رو هم اضافه کنید .


For k = 0 To ST.Count - 1
For Each dr As DataRow In Me.UniversityDataSet.Tables("Students").Rows
If dr("St_ID").ToString = ST(k) Then
Dim strRow() As String = {dr("St_ID").ToString, dr("Name").ToString, dr("Family").ToString, dr("FatherName"),......}
Me.DataGridView.Rows.Add(strRow)
End If
Next
Next

ببخشید اگه مال c#زیاد درست نبود چون همینجا نوشتم ولی مال vb رو درسته . خودتون زحمت تبدیل صحیح رو بکشید .


For(k=0;k<=ST.Count - 1;k++)
{
For Each DataRow dr In this.UniversityDataSet.Tables["Students"].Rows
{
If (dr["St_ID"].ToString == ST[k])
{
String strRow[] = {dr["St_ID"].ToString, dr["Name"].ToString, dr["Family"].ToString, dr["FatherName"]};
this.DataGridView.Rows.Add(strRow);
}
}
}

ali_kolahdoozan
یک شنبه 21 اسفند 1384, 16:23 عصر
این مسئله یک میلیون بار توی همین قسمت بررسی شده . من خودم جواب دادم . بگردید پیدا می شه . این رسم این سایته اگه یه چیزی گفته شده بود پرسیدن یا درخواست دوبارش گناه کبیرس .

once4ever
یک شنبه 21 اسفند 1384, 17:45 عصر
جناب مهرافروز
من میخوام فقط رکوردهایی که این شرط (بالا گفتم) رو دارند در dataset قرار بگیره نه اینکه از dataset چک کنم!

علی جان میشه لینک مطلبتونو بدید؟
من گشتم چیزی پیدا نکردم (فیلد جستجو ali_kolahdoozan در انجمن c# ) !!!

Mehrafrooz
یک شنبه 21 اسفند 1384, 18:23 عصر
شما می تونید یک دیتاست Temp دیگه ایجاد کنید و اونها رو به جای ریختن داخل دیتا گرید ، داخل دیتاست Temp بریزید . بهر صورت باید از یه جایی اطلاعات رو بخونید . خوب خود دیتاست کل برنامه که بهتره . فکر نمی کنم بشه آرایه رو با دستورات SQL استفاده کرد .

once4ever
یک شنبه 21 اسفند 1384, 18:31 عصر
راه شمارو انجام دادم: یک dataset جدید و دونه دونه رکوردهارو خوندم و اضافه کردم.
ممنون

ولی فکر کنم خود dataset فیلتر داشته باشه!

ali_kolahdoozan
یک شنبه 21 اسفند 1384, 18:47 عصر
خود dataset فیلتر داره . ولی به نظر من از dataview استفاده کنید

once4ever
یک شنبه 21 اسفند 1384, 19:42 عصر
خوب فیلترش چجوریه؟!
نمیدونم dataview چیه! میشه توضیح بدی

ali_kolahdoozan
یک شنبه 21 اسفند 1384, 21:50 عصر
دیتاویو یک نما فیلتر شده از database است . مبحث dataview جالبه . فقط یک چیزی از currency که نمی خواهی استفاده کنی .؟

once4ever
یک شنبه 21 اسفند 1384, 22:05 عصر
نه.
منتظرم

ali_kolahdoozan
یک شنبه 21 اسفند 1384, 22:15 عصر
ببین dataview رو باید ایجاد کنی و بعد فیلتر کنی هر طور دلت می خواد . من یه تیکه با اینکه خیلی کار دارم همین امشب برات تایپ می کنم و بعد pdf می کنم و میفرستم روی سایت حالشو ببر فقط نهایتا تا صبح صبر کن .

ali_kolahdoozan
یک شنبه 21 اسفند 1384, 23:01 عصر
به چند خط از من بخونید کارتون حل میشه

bahman.net
دوشنبه 22 اسفند 1384, 00:37 صبح
با تشکر از همه اساتید
خیلی جالب بود دستتون درد نکنه

ali_kolahdoozan
دوشنبه 22 اسفند 1384, 07:30 صبح
امیدوارم به درد بخور باشه

once4ever
دوشنبه 22 اسفند 1384, 09:00 صبح
ممنون علی جان
زدی تو هدف
الهی دستت برسه به زری!

ali_kolahdoozan
دوشنبه 22 اسفند 1384, 13:20 عصر
حالا این زری کجاست ؟ اگه بازم چیزی خواستی بگو . من در خدمتم