PDA

View Full Version : ارسال داده از طریق combobox



yanni2
شنبه 19 مرداد 1392, 02:20 صبح
با سلام
من با استفاده از کد زیر فیلد "نام "را از جدول "رشته" میخوانم و در داخل یک combobox قرار میدهم کار هم می کند و combobox فیلد "نام " را میخواند
اما مشکل اینجاست وقتی در جدول sql نگاه مینکم میبینم بجای "نام " فقط یک مقدار value member را وارد میکند

بطور واضح تر بگم که در کد زیر چه چیزی جلوی value member قرار بدم که مقدار فیلد "نام" را بخواند ؟
SqlDataAdapter da = new SqlDataAdapter("select name from reshte", conn);
DataTable dt = new DataTable();
da.Fill(dt);
comboBox1.DataSource = dt;
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "name";


خواهشا کمک کنید خیلی گیرم ممنون

nice_boy_a
شنبه 19 مرداد 1392, 08:42 صبح
اما مشکل اینجاست وقتی در جدول sql نگاه مینکم میبینم بجای "نام " فقط یک مقدار value member را وارد میکند



سلام.
شما مقدار combobox رو برای ثبت در جدول استفاده می کنید؟
value member رو برابر با کلید اصلی جدول رشته قرار بده.

yanni2
شنبه 19 مرداد 1392, 16:35 عصر
سلام.
شما مقدار combobox رو برای ثبت در جدول استفاده می کنید؟
value member رو برابر با کلید اصلی جدول رشته قرار بده.

بله
میشه بگید چجور این کارو کنم
یعنی اینجور :
combobox1.valumemeber="cod";

sohil_ww
شنبه 19 مرداد 1392, 18:21 عصر
سرچ بزنید

دانلود (http://uplod.ir/xwh02unybtdc/combobox.zip.htm)

yanni2
شنبه 19 مرداد 1392, 18:51 عصر
دوست عزیز این فایلی که دادی هدف من نیستش
من میخوام یک داده از طریق combobox به بانک ارسال کنم با کد نویسی
نه اینکه فقط داده بخونم

sohil_ww
شنبه 19 مرداد 1392, 19:08 عصر
کد شما که یه چیزه دیگه می گه

SqlDataAdapter da = new SqlDataAdapter("select name from reshte", conn);
DataTable dt = new DataTable();
da.Fill(dt);
comboBox1.DataSource = dt;
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "name";


یکم بیشتر توضیح بدید

khokhan
شنبه 19 مرداد 1392, 19:10 عصر
دوست عزیز این فایلی که دادی هدف من نیستش
من میخوام یک داده از طریق combobox به بانک ارسال کنم با کد نویسی
نه اینکه فقط داده بخونم
کد بالایی برای افزودن آیتمهای کمبو هستش حالا با چه کدی مقدار انتخابی رو وارد بانک می کنی ؟ :لبخند:

yanni2
شنبه 19 مرداد 1392, 21:21 عصر
اگه کدشو دارید بدید بدجور گیرم این قسمت پروژم

yanni2
شنبه 19 مرداد 1392, 21:23 عصر
من با این کد داده های فیلد نام را از جدول رشته میخونم و داخل combobox میریزم و combobox هم داده هام را نشان میدهد مشکل اینجاست که وقتی مقداری انتخاب میکنم در combobox بجای ان مقدار عبارت name در بانک ذخیره میشود (یعنی مقدار valuememeber)

yanni2
شنبه 19 مرداد 1392, 22:12 عصر
دوستان کسی نیست بگه با این چه کنیم

khokhan
شنبه 19 مرداد 1392, 22:34 عصر
دوستان کسی نیست بگه با این چه کنیم
البته می بخشین ولی فکر نمی کنم کسی متوجه منظورتون بشه برا همین دوستان نظری نمی دن
اون کدبالایی ، همانطور که خودتون هم گفتین اطلاعات ثبت شده در بانک رو می خونه و داخل کمبو باکس قرار میده

اشکال کار شما در اینه که شما می گین وقتی که آیتم انتخابی ذر کمبو باکس رو در دیتابیس ذخیره میکنم به جای اون آیتم این" valuememeber " ذخیذه می شه

حالا با کدوم کد مقدار کمبو باکس رو ذخیره می کنی :لبخند: اون کد ذخیره رو بگذار ببینیم چطوریاست

yanni2
شنبه 19 مرداد 1392, 22:52 عصر
در کد زیر قسمت combobbox1.selectvalue مقدار combobox و میگیرم
SqlCommand cmd1 = new SqlCommand("insert into ostad(name,lname,shsh,tel,reshte,doreshte,belt,day swork,dayework,address,des) values('" + textBoxX2.Text + "','" + textBoxX3.Text + "','" + textBoxX5.Text + "','" + maskedTextBox1.Text + "','" + textBoxX7.Text + "','" + comboBox1.SelectedValue + "','" + textBoxX6.Text + "','" + maskedTextBox2.Text + "','" + maskedTextBox3.Text + "','" + textBoxX10.Text + "','" + textBoxX4.Text + "')", conn);

yanni2
شنبه 19 مرداد 1392, 22:52 عصر
SqlCommand cmd1 = new SqlCommand("insert into ostad(name,lname,shsh,tel,reshte,doreshte,belt,day swork,dayework,address,des) values('" + textBoxX2.Text + "','" + textBoxX3.Text + "','" + textBoxX5.Text + "','" + maskedTextBox1.Text + "','" + textBoxX7.Text + "','" + comboBox1.SelectedValue + "','" + textBoxX6.Text + "','" + maskedTextBox2.Text + "','" + maskedTextBox3.Text + "','" + textBoxX10.Text + "','" + textBoxX4.Text + "')", conn);

yanni2
شنبه 19 مرداد 1392, 22:55 عصر
اینم کد قرار دادن اطلاعات در بانک حالا کسی هست

khokhan
شنبه 19 مرداد 1392, 22:57 عصر
SqlCommand cmd1 = new SqlCommand("insert into ostad(name,lname,shsh,tel,reshte,doreshte,belt,day swork,dayework,address,des) values('" + textBoxX2.Text + "','" + textBoxX3.Text + "','" + textBoxX5.Text + "','" + maskedTextBox1.Text + "','" + textBoxX7.Text + "','" + comboBox1.SelectedValue + "','" + textBoxX6.Text + "','" + maskedTextBox2.Text + "','" + maskedTextBox3.Text + "','" + textBoxX10.Text + "','" + textBoxX4.Text + "')", conn);
خوبه این شد یه چیزی :لبخند:
این قسمت رو عوض کنین

comboBox1.SelectedValue
بنویسین

comboBox1.Text

yanni2
شنبه 19 مرداد 1392, 23:01 عصر
دوست عزیز
comboBox1.Text پیغام خطا میده نمیشه

khokhan
شنبه 19 مرداد 1392, 23:10 عصر
دوست عزیز
comboBox1.Text پیغام خطا میده نمیشه
خطاش چی هست ؟؟؟؟

بنویس
comboBox1.SelectedText.Trim()

yanni2
شنبه 19 مرداد 1392, 23:24 عصر
بازم نمیشه فیلد خالی هست و هیچ مقداری داخلش نمیرود
دوباره کد بالا رو نگاه کد شاید مشکل valuemember من هست

yanni2
شنبه 19 مرداد 1392, 23:40 عصر
خطاش چی هست ؟؟؟؟

بنویس
comboBox1.SelectedText.Trim()


خطاش اینه
Error 1 'System.Windows.Forms.ComboBox' does not contain a definition for 'text' and no extension method 'text' accepting a first argument of type 'System.Windows.Forms.ComboBox' could be found (are you missing a using directive or an assembly reference?) J:\LISANS\Prozhe lisans\Razmi asl\Razmi\Razmi\ostad.cs 138 293 Razmi

khokhan
شنبه 19 مرداد 1392, 23:55 عصر
خطاش اینه
Error 1 'System.Windows.Forms.ComboBox' does not contain a definition for 'text' and no extension method 'text' accepting a first argument of type 'System.Windows.Forms.ComboBox' could be found (are you missing a using directive or an assembly reference?) J:\LISANS\Prozhe lisans\Razmi asl\Razmi\Razmi\ostad.cs 138 293 Razmi
بهترین کار اینه که از پارامترها استفاده کنین تا هنگام ثبت مقادیر فارسی هم دچار مشکل نشین اینطوری :
به جای :

SqlCommand cmd1 = new SqlCommand("insert into ostad(name,lname,shsh,tel,reshte,doreshte,belt,day swork,dayework,address,des) values('" + textBoxX2.Text + "','" + textBoxX3.Text + "','" + textBoxX5.Text + "','" + maskedTextBox1.Text + "','" + textBoxX7.Text + "','" + comboBox1.SelectedValue + "','" + textBoxX6.Text + "','" + maskedTextBox2.Text + "','" + maskedTextBox3.Text + "','" + textBoxX10.Text + "','" + textBoxX4.Text + "')", conn);




این چند خط رو همینطوری که هست بگذار جای کد قبلی :

SqlCommand command = new SqlCommand("insert into moshtari(name,lname,shsh,tel,reshte,doreshte,belt, dayswork,dayework,address,des) values(@name,@lname,@shsh,@tel,@reshte,@doreshte,@ belt,@dayswork,@dayework,@address,@des)", con);
command.Parameters.AddWithValue("@name", textBoxX2.Text));
command.Parameters.AddWithValue("@lname", textBoxX3.Text);
command.Parameters.AddWithValue("@cost_id", Int32.Parse(textBoxX5.Text));
command.Parameters.AddWithValue("@shsh", maskedTextBox1.Text);
command.Parameters.AddWithValue("@tel", Int32.Parse(textBoxX7.Text));
command.Parameters.AddWithValue("@reshte", comboBox1.SelectedText.Trim());
command.Parameters.AddWithValue("@doreshte", textBoxX6.Text);
command.Parameters.AddWithValue("@belt", maskedTextBox2.Text);
command.Parameters.AddWithValue("@dayswork", maskedTextBox3.Text);
command.Parameters.AddWithValue("@address", textBox2.Text);
command.Parameters.AddWithValue("@des", textBoxX10.Text);

command.ExecuteNonQuery();

yanni2
یک شنبه 20 مرداد 1392, 00:26 صبح
بهترین کار اینه که از پارامترها استفاده کنین تا هنگام ثبت مقادیر فارسی هم دچار مشکل نشین اینطوری :
به جای :

SqlCommand cmd1 = new SqlCommand("insert into ostad(name,lname,shsh,tel,reshte,doreshte,belt,day swork,dayework,address,des) values('" + textBoxX2.Text + "','" + textBoxX3.Text + "','" + textBoxX5.Text + "','" + maskedTextBox1.Text + "','" + textBoxX7.Text + "','" + comboBox1.SelectedValue + "','" + textBoxX6.Text + "','" + maskedTextBox2.Text + "','" + maskedTextBox3.Text + "','" + textBoxX10.Text + "','" + textBoxX4.Text + "')", conn);




این چند خط رو همینطوری که هست بگذار جای کد قبلی :

SqlCommand command = new SqlCommand("insert into moshtari(name,lname,shsh,tel,reshte,doreshte,belt, dayswork,dayework,address,des) values(@name,@lname,@shsh,@tel,@reshte,@doreshte,@ belt,@dayswork,@dayework,@address,@des)", con);
command.Parameters.AddWithValue("@name", textBoxX2.Text));
command.Parameters.AddWithValue("@lname", textBoxX3.Text);
command.Parameters.AddWithValue("@cost_id", Int32.Parse(textBoxX5.Text));
command.Parameters.AddWithValue("@shsh", maskedTextBox1.Text);
command.Parameters.AddWithValue("@tel", Int32.Parse(textBoxX7.Text));
command.Parameters.AddWithValue("@reshte", comboBox1.SelectedText.Trim());
command.Parameters.AddWithValue("@doreshte", textBoxX6.Text);
command.Parameters.AddWithValue("@belt", maskedTextBox2.Text);
command.Parameters.AddWithValue("@dayswork", maskedTextBox3.Text);
command.Parameters.AddWithValue("@address", textBox2.Text);
command.Parameters.AddWithValue("@des", textBoxX10.Text);

command.ExecuteNonQuery();


بازم نمیشه فیلد خالی هست و هیچ مقداری داخلش نمیرود

yanni2
یک شنبه 20 مرداد 1392, 00:43 صبح
دوست عزیز ممنون
combobox.text قرار دادم شد