تغییر دادن مقادیر یک ستون از جدول در زمان select
سلام
من می خواستم وقتی بانکم رو به دیتاگریدویو وصل می کنم به جای نمایش مقادیر خاص در یه فیلد کلمات دلخواه خودم نمایش داده بشه
مثلا من می خوام مقادیر 1 با عنوان " کلمه یک "
و مقادیر 2 با عنوان "کلمه دو " نمایش داده بشه فقط در یه فیلد نه همه فیلد ها
توی بانک نمی خوام مقدارهاش تغییر کنه فقط واسه نمایش
نقل قول: فیلتر کردن دیتا گرید ویو
بعد از اینکه دیتاگرید ست شد :
dataGridView1.Columns["clmn_id"].HeaderText = "شماره";
dataGridView1.Columns["clmn_name"].HeaderText = "نام";
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
_behnam_
بعد از اینکه دیتاگرید ست شد :
dataGridView1.Columns["clmn_id"].HeaderText = "شماره";
dataGridView1.Columns["clmn_name"].HeaderText = "نام";
اینی که نوشتی هدر رو تغییر میده من می خوام مقدار سلول رو چک کنه اگه 1 بود تغییرش بده به "کلمه یک"
نقل قول: فیلتر کردن دیتا گرید ویو
بفرمایید.
if (dataGridView1.Rows[0].Cells[0].Value.ToString() == "1")
dataGridView1.Rows[0].Cells[0].Value = "کله یک";
موفق باشد.
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
_behnam_
بفرمایید.
if (dataGridView1.Rows[0].Cells[0].Value.ToString() == "1")
dataGridView1.Rows[0].Cells[0].Value = "کله یک";
موفق باشد.
کجا باید بنویسم؟؟؟
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
_behnam_
بفرمایید.
if (dataGridView1.Rows[0].Cells[0].Value.ToString() == "1")
dataGridView1.Rows[0].Cells[0].Value = "کله یک";
موفق باشد.
مثلا اگه بخوام این فیلتر برای تمام سطر های ستون 7 اجرا بشه کجا و چطور باید بنویسم اینطور نوشتم خطا داد
if (dataGridView1.Rows[0].Cells[7].Value.ToString() == "1")
dataGridView1.Rows[0].Cells[7].Value = "کله یک";
نقل قول: فیلتر کردن دیتا گرید ویو
public void CustomerForm_Load(object sender, EventArgs e)
{
dataGridViewX1.DataSource = Cus.connectdb("select * from Obverse where active=1");
dataGridViewX1.Columns[0].Visible = true;
dataGridViewX1.Columns[1].HeaderText = "نام";
dataGridViewX1.Columns[2].HeaderText = "نام خانوادگی";
dataGridViewX1.Columns[3].HeaderText = "شرکت";
dataGridViewX1.Columns[4].HeaderText = "تلفن";
dataGridViewX1.Columns[5].HeaderText = "فکس";
dataGridViewX1.Columns[6].Visible = true;
dataGridViewX1.Columns[7].Visible = true;
dataGridViewX1.Columns[8].Visible = true;
}
نقل قول: فیلتر کردن دیتا گرید ویو
اینم کدش می خوام برای Columns[7] اجرا بشه
نقل قول: فیلتر کردن دیتا گرید ویو
نگفتید اسم ستون چیه توی کوئری هم معلوم نیست. ولی مثال زیر رو ببینید. ستون number را به معادل حروفی تبدیل کردم:
SELECT [name],
CASE [number]
WHEN 1 THEN N'یک'
WHEN 2 THEN N'دو'
WHEN 3 THEN N'سه'
END
FROM Table_1
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
Mahmoud.Afrad
نگفتید اسم ستون چیه توی کوئری هم معلوم نیست. ولی مثال زیر رو ببینید. ستون number را به معادل حروفی تبدیل کردم:
SELECT [name],
CASE [number]
WHEN 1 THEN N'یک'
WHEN 2 THEN N'دو'
WHEN 3 THEN N'سه'
END
FROM Table_1
من از کار با کوئری چیزی حالیم نمیشه :افسرده:
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
fool66
مثلا اگه بخوام این فیلتر برای تمام سطر های ستون 7 اجرا بشه کجا و چطور باید بنویسم اینطور نوشتم خطا داد
if (dataGridView1.Rows[0].Cells[7].Value.ToString() == "1")
dataGridView1.Rows[0].Cells[7].Value = "کله یک";
for (int i = 0; i < ds.Rows.Count; i++)
{
if (dataGridView1.Rows[i][7].Value.ToString() == "1")
dataGridView1.Rows[i][7].Value = " یک";
else if (dataGridView1.Rows[i][7].Value.ToString() == "2")
dataGridView1.Rows[i][7].Value = " دو";
}
ds همون شی ساخته شده از DataSet هستش البته از DataTable هم میتونین استفاده کنین
این کد رو میتونین توی همون رویداد Button_click که اطلاعات رو میریزه تو گریدویو بنویسین. یعنی بعد این که کد نوشتین که دیتا گریدویو رو پر کنه ، این کد هارو بنویسین
موفق باشی
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
erfan_urchin
for (int i = 0; i < ds.Rows.Count; i++)
{
if (dataGridView1.Rows[i][7].Value.ToString() == "1")
dataGridView1.Rows[i][7].Value = " یک";
else if (dataGridView1.Rows[i][7].Value.ToString() == "2")
dataGridView1.Rows[i][7].Value = " دو";
}
ds همون شی ساخته شده از DataSet هستش البته از DataTable هم میتونین استفاده کنین
این کد رو میتونین توی همون رویداد Button_click که اطلاعات رو میریزه تو گریدویو بنویسین. یعنی بعد این که کد نوشتین که دیتا گریدویو رو پر کنه ، این کد هارو بنویسین
موفق باشی
این کدی که گذاشتی بعد از پر کردن گریدویو شروع به تعویض می کنه فقط برای رشته ها خوبه
ولی اگه من بخوام یه مقدار Boolean رو چک کنم و به جاش یه رشته بزارم انجامش نمی ده
نقل قول: فیلتر کردن دیتا گرید ویو
مقدار bool هم به شکل زیر است.
if (dataGridView1.Rows[i][7].Value.ToString() == "true")
یا
if (dataGridView1.Rows[i][7].Value.ToString() == "false")
1 ضمیمه
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول: فیلتر کردن دیتا گرید ویو
راهش همونه که بنده گفتم. یک بار دیگه کوئری رو بدون * بزارید یعنی به جای * نام ستونها رو بنویسید و همچنین بگید چه ستونهایی با چه مقداری قراره به چه مقداری تغییر داده بشن.
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
Mahmoud.Afrad
راهش همونه که بنده گفتم. یک بار دیگه کوئری رو بدون * بزارید یعنی به جای * نام ستونها رو بنویسید و همچنین بگید چه ستونهایی با چه مقداری قراره به چه مقداری تغییر داده بسن.
چطور باید استفاده کنم ؟؟؟؟ لینک آموزشی داری؟؟؟؟
نقل قول: فیلتر کردن دیتا گرید ویو
این جدول Obverse چه ستونهایی داره و نوعشون چیه.
1 ضمیمه
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
Mahmoud.Afrad
این جدول Obverse چه ستونهایی داره و نوعشون چیه.
اینا هستن که می خوام فیلد Kharidar اگه true بود توی گریدویو خریدار نشون بده اگه false بود فروشنده نمایش بده
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
fool66
اینا هستن که می خوام فیلد Kharidar اگه true بود توی گریدویو خریدار نشون بده اگه false بود فروشنده نمایش بده
بهتره که یه جدول دیگه به بانکت اضافه کنی که دوتا فیلد id و value داشته باشه مثلا
id 1=kharidar و id 2=forooshande
بعد id رو به عنوان کلید خارجی بیار تو جدول اصلیت
دیگه بقیشم که راحته
نقل قول: فیلتر کردن دیتا گرید ویو
SELECT Oid,
Fname,
Lname,
Cname,
Tell,
Fax,
[Address],
CASE [Kharidar]
WHEN 'True' THEN N'خریدار'
WHEN 'False' THEN N'فروشنده'
END
FROM Obverse
WHERE Active = 'True'
نقل قول: فیلتر کردن دیتا گرید ویو
نقل قول:
نوشته شده توسط
Mahmoud.Afrad
SELECT Oid,
Fname,
Lname,
Cname,
Tell,
Fax,
[Address],
CASE [Kharidar]
WHEN 'True' THEN N'خریدار'
WHEN 'False' THEN N'فروشنده'
END
FROM Obverse
WHERE Active = 'True'
ممنون داداش دیشب جناب khokhan گفتن
بازم ممنون از لطف همتون :قلب: