PDA

View Full Version : combobox



amirreyhaneh
دوشنبه 08 مرداد 1386, 10:01 صبح
با سلام
من در C# تازه کارم.اگه سوال ابتدایی است شرمنده
چطوری میشه به combobox یه text ویه value متفاوت داد.مثلا در text آن علی ودر value آن85 قرار گیرد حالا اگر کسی علی را قبول کرد در بانک 85 bodvi a,n

mohammad272005
دوشنبه 08 مرداد 1386, 23:23 عصر
از DataSource، می تونی DisplayMember رو برای نمایش و ValueMember رو value استفاده کنی.

amirreyhaneh
سه شنبه 09 مرداد 1386, 19:00 عصر
سلام
من نمی خواهم داده ها از بانک خوانده بشه؟

jafari_m246
چهارشنبه 10 مرداد 1386, 08:02 صبح
حالا ما که خواستیم از بانک بخونه را خوند که شما تازه...



combobox1.valuemember="st_num ";


من این کد را نوشتم ولی به جای اینکه اون عدد را داخل اش بریزه رشته "st_num" را داخل اش میریزه

M * M * A
چهارشنبه 10 مرداد 1386, 23:39 عصر
چه جوری میشه یک مقدار را درون comboboxجستجو کرد ؟ (بدون استفاده از for & forech)

PC2st
پنج شنبه 11 مرداد 1386, 09:27 صبح
من نمی خواهم داده ها از بانک خوانده بشه؟

اگر نمیخواهید ComboBox رو به DataTable یا DataSet یا غیره وصل کنید...
باید خودتون یک کلاس ایجاد کرده و که آن کلاس حداقل دارای یک خاصیت (Propety) باشد و از آن کلاس یک آرایه ایجاد کنید. آرایه ایجاد شده را به DataSource و نام خاصیت (Property) از کلاس را بصورت یک رشته برای DataMember مشخص کنید.
مثلا یک کلاس داریم به نام TestClass:


public class TestClass
{
public TestClass(string testProperty)
{
this.TestProperty = testProperty;
}
private string _testField;
public string TestProperty
{
get
{
return this._testField;
}
set
{
this._testField = value;
}
}
}

کلاس فوق دارای یک خاصیت بنام TestProperty هست.
مثلا به شکل زیر یکسری داده را به ComboBox وصل میکنیم:


TestClass[] testArray = new TestClass[2];
testArray[0] = new TestClass("First Value");
testArray[1] = new TestClass("Second Value");
this.comboBox1.DataSource = testArray;
this.comboBox1.DisplayMember = "TestProperty";

در کد فوق:
در خط اول، آرایه ای از TestClass بطول 2 ایجاد کرده و مقدار هر خانه از آرایه را در خطوط دوم و سوم مشخص میکنیم. میتوانستیم بجای یک ارایه از List یا ArrayList هم استفاده کنیم.
به فرض اینکه نام ComboBox بصورت comboBox1 باشه، DataSource و DataMember رو مشخص میکنیم با توجه به اینکه DataMember حتما باید حاوی نام خاصیت باشد و اگر نام یک فیلد را به آن بدهیم، جواب لازم را نخواهیم گرفت. (یکی از تفاوتهای خاصیت با فیلد)

once4ever
پنج شنبه 11 مرداد 1386, 09:42 صبح
@PC2st.ir جالب بود