PDA

View Full Version : سوال: تغييرعنوان در كموباكس



Iran58
چهارشنبه 19 خرداد 1389, 11:15 صبح
سلام
يك comboxدارم كه جنسيت اشخاص رانشان مي دهد اطلاعات آن ازيك جدول خوانده مي شود
مشكل من اينجاست كه ستون موردنظر درجدول ازنوع bitاست ودوحالت trueوfalseرانمايش مي دهد
حال مي خواهم بجاي trueمردوبجايfalse زن نمايش داده شوده اماهنگام ايجادتغييرات همانtrueوfalseاستفاده شود. نمي دانم چكاربايدكنم .لطفاراهنمايي بفرماييد

s.khoshfekran
چهارشنبه 19 خرداد 1389, 11:38 صبح
SELECT Case Sex
When'true'THEN'Male'
when'false'then'Female'
End
From Employees

cardano7
چهارشنبه 19 خرداد 1389, 12:16 عصر
کار یک خطه!



string Sex =(SQL_Sex.ToLower()=="true"?"Male":"Female");

سهراب_1389
چهارشنبه 19 خرداد 1389, 12:19 عصر
سلام
اگر جدول دیتا بیست این طوری که یه ستون عنوان داری که با زن ومرد پر شده و یه ID که اینجا
TRUE || FALSE هستش، بعد از اینکه کومبو باکس رو به جدولت وصل کردی تو قسمت properties خاصیت display member رو به ستون اول و selected value رو به ستون دوم وصل کن .مشکلت حل میشه.

sds1920
چهارشنبه 19 خرداد 1389, 15:00 عصر
دوست عزيز.به نظر من براي مسائلي نظير جنسيت كه داراي دو يا چند مقدار مشخص هست نيازي به تعريف جدول نداريد.چون ساخت يك جدول در بانك علاوه بر فضاي اشغالي خودش باعث ساخت ايندكس و ...در بانك مي شه در صورتي كه نيازي به اون نيست.
شما به طور مثال 0 رو زن و 1 رو مرد در نظر بگيريد و در تمام قسمتهاي برنامه از همين قانون پيروي كن.براي بدست آوردن اين دو مقدار هم از SelectedIndex مي توني استفاده كني.
در اينصورت نيازي به پر كردن كمبو با جدول نداريد.چون مقادير ثابت هستند.
براي تبديل هم مي شه از روش cardano7 با يه كم تغيير استفاده كرد.



string Sex =(Combo.SelectedIndex==0?"Male":"Female");

Iran58
شنبه 19 تیر 1389, 13:38 عصر
SELECT Case Sex
When'true'THEN'Male'
when'false'then'Female'
End
From Employees

سلام من از كد بالا استفاده كرده ام و از كدذيل اما بازهم كمبوباكس خالي است

private void Situition()
{
Common.tblSituitionData roles = null;
roles = new DataAccess.tblSituition().FunSel_tblSituition();
cbSituition.DataSource = roles.Tables[Common.tblSituitionData.TblName];
cbSituition.DisplayMember = Common.tblSituitionData.Fld_Situition;
cbSituition.ValueMember = Common.tblSituitionData.Fld_Id;
FirstTime = false;
}

Iran58
شنبه 19 تیر 1389, 14:37 عصر
يكي از دوستان گفته ازspزير استفاده كنم

ALTER procedure [dbo].[Sel_tblSituition]
as
Select Case Situition when 'True' then 'فعال' when 'False' then 'غیرفعال' end as status From [tblSituition]
وگفته DataSource وDisplayMember را باstatus پركنم اما نمي دانم چگونه
لطفا كمك كنيد

hossein_ignore
شنبه 19 تیر 1389, 14:39 عصر
بهتر نیست از enum استفاده کنی؟ به نظر من اینجوری قشنگتره!
public enum Sex { Male, Female }

Iran58
شنبه 19 تیر 1389, 14:50 عصر
بهتر نیست از enum استفاده کنی؟ به نظر من اینجوری قشنگتره!
public enum Sex { Male, Female }
باسلام
ميشه در قالب كد توضيح دهيد كه چكار كنم