PDA

View Full Version : سوال: سوال در مورد پروژه آموزشگاه



cse.Abdali
شنبه 04 شهریور 1391, 09:03 صبح
با سلام
برای پروژه آموزشگاه
جداولی به نام
Student(کد دانشجو و سایر مشخصات فردی)
Course (کد دوره، نام دوره، زمان شروع و پایان ثبت نام و سایر مشخصات)
Course-Student (کد دانشجو، کد دوره، زمان ثبت نام، هزینه پرداخت شده، بدهی)
دارم
در فرم ثبت نام دانشجو برای دوره، combobox ی دارم که میخوام در آن دوره هایی که در حال حاضر برای ثبت نام وجود دارند نمایش داده شوند و بعد از اینکه دوره مورد نظر انتخاب شد، با کلیک روی دکمه ثبت نام، کد دوره (و نه نام دوره) در جدول Course-Student ثبت شود
چطور می تونم این کار را انجام بدم؟
سپاس از راهنمایی شما

amir-aa
شنبه 04 شهریور 1391, 09:52 صبح
منظورتون اینه که شما میخواید وقتی گزینه ای رو در combobox انتخاب کرد اتوماتیک فیلد کد دوره رو پر کنه؟؟

mousa1992
شنبه 04 شهریور 1391, 10:06 صبح
SqlDataAdapter da = new SqlDataAdapter("select * from names", con);
DataTable dt = new DataTable();
con.Open();
da.Fill(dt);
con.Close();
comboBox1.DataSource = dt;
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "id";

سلام دوست عزیز
کد بالا نمونه ای برای پر کردن combobox و عضو نمایشی اون name گذاشتم که برای شما نام دوره هست و value ایتم ها را کد دوره تعیین میکنید ، شما دستور select رو که مینویسید فقط کافیه کد دوره و نام دوره رو انتخاب کنید
وبرای گرفتن کد دوره هنگام انجام ثبت نام میتونید به صورت زیر عمل کنید
string code = comboBox1.SelectedValue.ToString();

cse.Abdali
دوشنبه 06 شهریور 1391, 10:34 صبح
تشکر از راهنمایی شما mousa1992 (http://barnamenevis.org/member.php?252440-mousa1992)
من از معماری سه لایه استفاده می کنم
این کد رو در لایه Business Logic نوشتم

public DataTable fillCombobox()
{
string strFillCombobox = " select CourseCode,CourseName from tblCourse ";
strFillCombobox = string.Format(strFillCombobox, CourseCode, CourseName);
clsDataAccess dataAccess = new clsDataAccess();
dataAccess.connect();
DataTable dt = dataAccess.query(strFillCombobox);
dataAccess.disConnect();
return dt;

}

و در رویداد click مربوط به Combobox هم این کد را نوشتم


clsCourse course = new clsCourse();
cmbCourseName.DataSource = course.fillCombobox();
cmbCourseName.DisplayMember = course.CourseName;
cmbCourseName.ValueMember = course.CourseCode.ToString();


ولی ظاهرا اشتباهه چون جواب نمیده
ممنون میشم راهنمایی کنین

cse.Abdali
دوشنبه 06 شهریور 1391, 10:36 صبح
منظورتون اینه که شما میخواید وقتی گزینه ای رو در combobox انتخاب کرد اتوماتیک فیلد کد دوره رو پر کنه؟؟
اول میخوام فهرست دوره هایی که در آموزشگاه برگزار میشن رو در این Combobox بهم نشون بده و بعد به جای اینکه در جدول مربوطه نام دوره ثبت بشه، کد دوره رو ثبت کنه

nilmil_nil
دوشنبه 06 شهریور 1391, 11:02 صبح
]

clsCourse course = new clsCourse();
cmbCourseName.DataSource = course.fillCombobox();
cmbCourseName.DisplayMember = "CourseNAme";
cmbCourseName.ValueMember = "CourseId";



این کد رو در فرم لود بنویس
بعد برای دادن مقدار کد هر دوره برای درج در جدول هات از
CboBox.SelectedValue استفاده کن ...