نمایش نتایج 1 تا 13 از 13

نام تاپیک: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

  1. #1
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    Question پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    باسلام خدمت دوستان
    جدول پروژم با اسم CommodityCodTable بصورت زیره:
    sql Table.jpg

    تو پروژم ComboBox ام رو به این جدول وصل کردم که مقادیر فیلد CommodType رو نمایش میده و برای نمایش اطلاعات در ComboBox از کد زیر تو لود فرمم استفاده کردم:

    Tarazo_Linq_To_SqlDataContext db;
    private void frmAddCommod_Load(object sender, EventArgs e)
    {
    db = new Tarazo_Linq_To_SqlDataContext();
    comboBox1.ValueMember="RowCod";
    comboBox1.DisplayMember = "CommodType";
    comboBox1.DataSource = db.CommodityCodTables.ToList();
    }


    حالا میخوام با انتخات فیلدی از ComboBoxام رکوردی که تو فیلد RowCod هست رو در TextBox 1 نمایش بده و رکوردی که داخل فیلد CommodAbbrev هست رو داخل TextBox 2 نمایش بده.
    با تکنیک linq to sql از چه کدی باید داخل comboBox1_SelectedIndexChanged استفاده کنم که با تغییر گزینه ComboBox ام مقادیر TextBox م هم تغییر کنه?

    ممنون میشم راهنماییم کنید.
    با تشکر از تمامی دوستان

  2. #2

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    در رویداد مورد نظر ، پراپرتی SelectedItem را به CommodityCodTable تبدیل و به پراپرتی هایش دسترسی پیدا کنید.

  3. #3
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    در رویداد مورد نظر ، پراپرتی SelectedItem را به CommodityCodTable تبدیل و به پراپرتی هایش دسترسی پیدا کنید.
    ممنون از راهنماییتون. من از کد زیر استفاده کردم:

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
    var ComType = from i in db.CommodityCodTables
    where i.CommodType == Convert.ToString(comboBox1.SelectedValue)
    select i;
    textBox1.DataBindings.Add("Text", db.CommodityCodTables, "Rowcod");
    textBox2.DataBindings.Add("Text", db.CommodityCodTables, "CommoAbbrev");
    }


    ولی به خطای زیر برخورد کردم:
    er vs2.jpg

    نمیدونم روشم درسته یا نه؟
    ممنون میشم راهنماییم کنید

  4. #4

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نه ، منظورم چیز دیگه ای بود.
    اگر binding بخواهید استفاده کنید نیاز به رویداد SelectedIndexChanged ندارید. به صورت زیر عمل کنید
            Tarazo_Linq_To_SqlDataContext db;

    private void frmAddCommod_Load(object sender, EventArgs e)
    {
    db = new Tarazo_Linq_To_SqlDataContext();
    comboBox1.ValueMember = "RowCod";
    comboBox1.DisplayMember = "CommodType";
    var list =db.CommodityCodTables.ToList();
    comboBox1.DataSource = list;
    textBox1.DataBindings.Add("Text", list, "Rowcod");
    textBox2.DataBindings.Add("Text", list, "CommoAbbrev");
    }

  5. #5
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    Question نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    نه ، منظورم چیز دیگه ای بود.
    اگر binding بخواهید استفاده کنید نیاز به رویداد SelectedIndexChanged ندارید. به صورت زیر عمل کنید
            Tarazo_Linq_To_SqlDataContext db;

    private void frmAddCommod_Load(object sender, EventArgs e)
    {
    db = new Tarazo_Linq_To_SqlDataContext();
    comboBox1.ValueMember = "RowCod";
    comboBox1.DisplayMember = "CommodType";
    var list =db.CommodityCodTables.ToList();
    comboBox1.DataSource = list;
    textBox1.DataBindings.Add("Text", list, "Rowcod");
    textBox2.DataBindings.Add("Text", list, "CommoAbbrev");
    }
    ممنون از راهنماییتون. ولی باز همون خطارو میده.وقتی یک TextBox هست بدون مشکل اجرا میشه، اما وقتی دومین TextBox رو میزارم همون خطا رو میده.
    کد نهایی تو فرم لود اینجوریه:

    Tarazo_Linq_To_SqlDataContext db;
    private void frmAddCommod_Load(object sender, EventArgs e)
    {
    db = new Tarazo_Linq_To_SqlDataContext();
    comboBox1.ValueMember="RowCod";
    comboBox1.DisplayMember = "CommodType";
    var list = db.CommodityCodTables.ToList();
    comboBox1.DataSource = list;
    textBox1.DataBindings.Add("Text", list, "Rowcod");
    textBox2.DataBindings.Add("Text", list, "CommoAbbrev");
    }

  6. #6
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    نه ، منظورم چیز دیگه ای بود.
    اگر binding بخواهید استفاده کنید نیاز به رویداد SelectedIndexChanged ندارید. به صورت زیر عمل کنید
            Tarazo_Linq_To_SqlDataContext db;

    private void frmAddCommod_Load(object sender, EventArgs e)
    {
    db = new Tarazo_Linq_To_SqlDataContext();
    comboBox1.ValueMember = "RowCod";
    comboBox1.DisplayMember = "CommodType";
    var list =db.CommodityCodTables.ToList();
    comboBox1.DataSource = list;
    textBox1.DataBindings.Add("Text", list, "Rowcod");
    textBox2.DataBindings.Add("Text", list, "CommoAbbrev");
    }
    اگر نخوام از Binding استفاده کنم، شما چه شیوه و کدی پیشنهاد میکنید؟

  7. #7
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    Question نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    نه ، منظورم چیز دیگه ای بود.
    اگر binding بخواهید استفاده کنید نیاز به رویداد SelectedIndexChanged ندارید. به صورت زیر عمل کنید
            Tarazo_Linq_To_SqlDataContext db;

    private void frmAddCommod_Load(object sender, EventArgs e)
    {
    db = new Tarazo_Linq_To_SqlDataContext();
    comboBox1.ValueMember = "RowCod";
    comboBox1.DisplayMember = "CommodType";
    var list =db.CommodityCodTables.ToList();
    comboBox1.DataSource = list;
    textBox1.DataBindings.Add("Text", list, "Rowcod");
    textBox2.DataBindings.Add("Text", list, "CommoAbbrev");
    }
    مشکل برطرف شد. ولی با تغییر گزینه comboBox تغییری در TexBox ها ایجاد نمیشه؟
    چرا نمیدونم؟
    میشه راهنماییم بفرمایید

  8. #8

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط bmvgod مشاهده تاپیک
    مشکل برطرف شد. ولی با تغییر گزینه comboBox تغییری در TexBox ها ایجاد نمیشه؟
    چرا نمیدونم؟
    میشه راهنماییم بفرمایید
    پروژه را قرار بدید یا پیام خصوصی کنید.

  9. #9

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط bmvgod مشاهده تاپیک
    مشکل برطرف شد. ولی با تغییر گزینه comboBox تغییری در TexBox ها ایجاد نمیشه؟
    چرا نمیدونم؟
    میشه راهنماییم بفرمایید
    منبع داده(list) باید یکسان باشد. در پروژه ای که پ.م کردید اینطور نیست.

  10. #10
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    منبع داده(list) باید یکسان باشد. در پروژه ای که پ.م کردید اینطور نیست.
    چه تغیری باید بهش بدم؟

  11. #11

    نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط bmvgod مشاهده تاپیک
    چه تغیری باید بهش بدم؟
            private void frmAddCommodity_Load(object sender, EventArgs e)
    {
    string Date = PerCale.GetYear(DateTime.Now).ToString()
    +"/"+ PerCale.GetMonth(DateTime.Now) +"/"+ PerCale.GetDayOfMonth(DateTime.Now);

    txtDate.Text = Date+"-"+ DateTime.Now.ToString("HH:mm:ss" );

    db = new LinqToTrazoDataContext();
    var list = db.CommodityCodTables.ToList();
    cmbCommodityGrouping.ValueMember = "RowCod";
    cmbCommodityGrouping.DisplayMember = "CommodType";
    cmbCommodityGrouping.DataSource = list;
    txtCodCommodity.DataBindings.Add("Text", list, "Rowcod");
    txtAbbrev.DataBindings.Add("Text", list, "CommodAbbrev");
    }

  12. #12
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    Thumbs up نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
            private void frmAddCommodity_Load(object sender, EventArgs e)
    {
    string Date = PerCale.GetYear(DateTime.Now).ToString()
    +"/"+ PerCale.GetMonth(DateTime.Now) +"/"+ PerCale.GetDayOfMonth(DateTime.Now);

    txtDate.Text = Date+"-"+ DateTime.Now.ToString("HH:mm:ss" );

    db = new LinqToTrazoDataContext();
    var list = db.CommodityCodTables.ToList();
    cmbCommodityGrouping.ValueMember = "RowCod";
    cmbCommodityGrouping.DisplayMember = "CommodType";
    cmbCommodityGrouping.DataSource = list;
    txtCodCommodity.DataBindings.Add("Text", list, "Rowcod");
    txtAbbrev.DataBindings.Add("Text", list, "CommodAbbrev");
    }
    از راهنمایی هاتون، بسیار بسیار ممنونم، خروجی گرفتم.
    خیلی خیلی لطف کردید.
    آخرین ویرایش به وسیله bmvgod : یک شنبه 02 دی 1397 در 23:01 عصر

  13. #13
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    تهران
    پست
    227

    Question نقل قول: پر کردن دو TextBox بعد از اتصال ComboBox به دیتابیس با استفاده از تکنیک Linq to Sql

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
            private void frmAddCommodity_Load(object sender, EventArgs e)
    {
    string Date = PerCale.GetYear(DateTime.Now).ToString()
    +"/"+ PerCale.GetMonth(DateTime.Now) +"/"+ PerCale.GetDayOfMonth(DateTime.Now);

    txtDate.Text = Date+"-"+ DateTime.Now.ToString("HH:mm:ss" );

    db = new LinqToTrazoDataContext();
    var list = db.CommodityCodTables.ToList();
    cmbCommodityGrouping.ValueMember = "RowCod";
    cmbCommodityGrouping.DisplayMember = "CommodType";
    cmbCommodityGrouping.DataSource = list;
    txtCodCommodity.DataBindings.Add("Text", list, "Rowcod");
    txtAbbrev.DataBindings.Add("Text", list, "CommodAbbrev");
    }

    باسلام مجدد خدمت دوستان
    الان برنامه به اینصورت شد که با انتخاب گزینه ای از ComboBox که وصل هست به فیلد CommodType جدول CommoCodTable و به صورت خودکار txtAbbrev و txtCodCommodity پر میشود.
    حالا میخوام کدو طوری تغییرش بدم که بره فیلد RowCommo از جدول CommoTabal بخونه یک واحد بهش اضافه کنه و در txtCodCommodity چاپ کنه.
    ممنون میشم راهنماییم کنید که چه تغییری باید بدم.
    باتشکر از تمامی دوستان و بزرگواران
    آخرین ویرایش به وسیله bmvgod : سه شنبه 31 اردیبهشت 1398 در 00:43 صبح

تاپیک های مشابه

  1. سوال: خواندن مقادیر متناظر ComboBox از دیتابیس و نمایش در textbox
    نوشته شده توسط jafarpalideh در بخش C#‎‎
    پاسخ: 2
    آخرین پست: شنبه 30 مرداد 1395, 08:40 صبح
  2. سوال: نحوه اتصال یک صفحه وب به دیتابیس با استفاده از LINQ
    نوشته شده توسط Ship Storm در بخش VB.NET
    پاسخ: 0
    آخرین پست: جمعه 03 آذر 1391, 18:11 عصر
  3. استفاده از LINQ برای اتصال به دیتابیس های مختلف
    نوشته شده توسط ahrimaneahurai در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 4
    آخرین پست: یک شنبه 30 مرداد 1390, 23:49 عصر
  4. اتصال treeview به دیتابیس با استفاده از linq
    نوشته شده توسط farshid_82 در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 0
    آخرین پست: جمعه 13 اسفند 1389, 15:19 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •