PDA

View Full Version : سوال: تغییر نام اطلاعات یک ستون datagridview



حسین.کاظمی
چهارشنبه 20 آبان 1394, 21:29 عصر
سلام
من تو برنامه ام اطلاعات یک جدول را میریزم توی گرید یک ستون از گرید را 0و1 ذخیره کردم حالا میخام هنگام نمایش این فرم ستونی که صفر و یک نوشته شده بجای 0 مجرد و بجای 1متاهل توشه شود!!!!
ممنون میشم راهنماییم کتید.

MortezaZandi
چهارشنبه 20 آبان 1394, 22:35 عصر
سلام آقا حسین سه راه داری:

هنگام وارد کردن داده ها به گراید اونا رو تبدیل کنی
برای رویداد ValueChanged سلول های اون ستون کدی بنویسی که بعد از تغییر مقدار هر سلول عمل تبدیل رو انجام بده و مقدار جدید رو جایگزین عدد کنه.
یه دیتا گرید مخصوص فقط با کمتر از بیست خط کد بنویسی که اتوماتیک این کار رو بکن





روش 1 و 2 :
کد زیر ر بگیر و به فرمت اضافه کن،

کد:
136666

حالا برای تبدیل تو رویداد CellValueChanged دیتاگرید مثل زیر، تابع DoConverting رو فراخوانی کن،پارامتر اول تابع همان شماره ستونی است که جنسیت توشه:

private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
DoConverting(2, e);
}


--------------------------------------------------------------------------------------------------------------------------------

روش 3:
در صورت درخواست ارائه میشه

محمد آشتیانی
چهارشنبه 20 آبان 1394, 23:04 عصر
سلام
به راحتی موقع کوئری نوشتن میتونی این کار رو انجام بدی
فرض کن این فیلدها رو داری : نام ، نام خانوادگی و تاهل ، کوئری چیزی شبیه به این خواهد شد

select FirstName,
LastName,
(case when Marriage = 0 then 'مجرد' else 'متاهل' end) AS [State]
from personInfo



موفق باشید.

حسین.کاظمی
چهارشنبه 20 آبان 1394, 23:11 عصر
سلام آقا حسین سه راه داری:

هنگام وارد کردن داده ها به گراید اونا رو تبدیل کنی
برای رویداد ValueChanged سلول های اون ستون کدی بنویسی که بعد از تغییر مقدار هر سلول عمل تبدیل رو انجام بده و مقدار جدید رو جایگزین عدد کنه.
یه دیتا گرید مخصوص فقط با کمتر از بیست خط کد بنویسی که اتوماتیک این کار رو بکن



سلام دوست عزیز
ممنون بابت کد ها و راهنماییت ولی متاسافانه نشد:ناراحت::ناراحت:

MortezaZandi
چهارشنبه 20 آبان 1394, 23:30 عصر
خواهش میکنم ، چی نشد؟ واضح تر بگید.

همون طور که آقای آشتیانی فرمودند هنگام وارد کردن داده ها از بانک اطلاعات میتوانید به همان روش ایشان داده ها را در سطح SQL تبدیل کنید.
و کدی که بنده بهتون دادم برای وقتیه که سلول های DataGride به صورت دستی و توسط کاربر و حتی توسط کد های برنامه تغییر کند(بعد از بارگذاری از بانک) و شما بخوای که در صورت ورود هریک از داده های ,male,female,Male,Female,0,1 کلا دو داده Male , Female داشته باشی یا "مجرد" و "متاهل".

حسین.کاظمی
چهارشنبه 20 آبان 1394, 23:32 عصر
سلام
به راحتی موقع کوئری نوشتن میتونی این کار رو انجام بدی
فرض کن این فیلدها رو داری : نام ، نام خانوادگی و تاهل ، کوئری چیزی شبیه به این خواهد شد

select FirstName,
LastName,
(case when Marriage = 0 then 'مجرد' else 'متاهل' end) AS [State]
from personInfo



موفق باشید.

جناب آقای آشتیانی سلام
ممنون بابت کد و راهنماییتون درست شد!!!،من یادم رفت ذکر کنم که در این پروژه ام بانک اطلاعاتیم اکسس هست و همینطور که میدانید اکسس دستورCASE را پشتیبانی نمیکند ولی یاد آوری خوبی بود واسم که معادل CASE در اکسس Switch را بنویسم :لبخند::لبخند::لبخند:

ممنونم