PDA

View Full Version : پر کردن کمبوباکس با linq



salehsam
جمعه 11 مرداد 1392, 18:12 عصر
سلام دوستان
چجوری میشه با linq یه کمبو باکس یا لیست باکس رو بصورت چند ستونی پر کزد؟
من از این کد استفاده کردم ولی فقط یک ستون رو نمایش میده:


mydataDataContext dt = new mydataDataContext();
var query = from p in dt.tbl_persons
select p;
this.listBox1.DataSource = query.ToArray();
this.listBox1.DisplayMember = "name";
this.listBox1.ValueMember = "id";

و چجوری باید id مورد انتخاب شده رو تو جدول دیگه ثبت کرد؟
من از این کد استفاده کردم ولی چون id فرمت int رو داره قبول نمیکنه:افسرده:


string _name = textBox1.Text;
string _omumi = textBox2.Text;
var db = new mydataDataContext();
tbl_person tb = new tbl_person()
{
name = _name,
omumi = _omumi
};
db.tbl_persons.InsertOnSubmit(tb);
db.SubmitChanges();
dataGridView1.DataSource = db.tbl_persons;

mousa1992
جمعه 11 مرداد 1392, 19:34 عصر
سلام
اگه میخوای چند ستون داشته باشی باید از کنترلی مثل datagridview استفاده کنی و اما در مورد کامبو باکس میتونی زمانی که اطلاعاتت رو واکشی میکنی دو فیلد رو با هم ترکیب کنی و تو کامبو و یا لیست باکس نشونش بدی
مثلا select new { FullName = p.Name+p.Family} و در نهایت خاصیت displayMember رو FullName قرار میدی
در مورد ثبت id توی کدی که نوشتین که چیزی پیدا نیست و ربطی به اون نداره
اگه مشکلت حل نشد کدتو کامل بذار

موفق باشی