PDA

View Full Version : سوال: مشکل با binding navigator



marshal
جمعه 10 اردیبهشت 1389, 14:54 عصر
سلام. اگه میشه برنامه زیر رو ببینید مشکلش چیه.
بعد از اینکه تابع initialdatabase رو در فرم لود صدا میزنم datagrid به binding navigator متصل میشه و میتونم کنترلش کنم. textbox1 هم متصل میشه ولی نمیتونم از طریق binding navigator کنترلش کنم. میخام وقتی با binding navigator بین رکورد هام حرکت میکنم داخل textbox1 هم مقادیر عوض بشه.در حال حاضر مقدار textbox1 روی رکورد اول مونده و تغییر نمیکند.

shahab_ss
جمعه 10 اردیبهشت 1389, 20:54 عصر
سلام،
شما میتونی از CurrentChanged در BindingSource استفاده کنی.
البته برای استفاده راحت تر از ToolBox یک BindingSource به فرم اضافه کن بعد Event مربوطه (CurrentChanged) رو Handel کن و در اون میتونی به آبجکت سطر مورد نظر خودت به اینصورت دسترسی داشته باشی و هر فیلدی که لازم داری رو استفاده کنی :

var CurrenctObj = (CategoryTable)bindingSource.Current;

saeed-kh
یک شنبه 12 اردیبهشت 1389, 02:05 صبح
سلام دوست عزیز
فکر میکنم اگه به جای این کد :

BindingSource bindingSource = new BindingSource();
bindingSource.DataSource = dataset;
bindingSource.DataMember = dataset.Tables["CategoryTable"].ToString();

bn.BindingSource = bindingSource;
textBox1.DataBindings.Add("Text", bindingSource.DataSource, "CategoryTable.CategoryID");
categoryDataGridView.DataSource = bindingSource;

این کد رو بنویسی :

BindingSource bindingSource = new BindingSource();
bindingSource.DataSource = dataset;
bindingSource.DataMember = "CategoryTable";

bn.BindingSource = bindingSource;
textBox1.DataBindings.Add("Text", bindingSource, "CategoryID", true);
categoryDataGridView.DataSource = bindingSource;

خیلی بهتره..
مخصوصا خطی که textboxرو به سورس بایند میکنی...
امتحان کن ببین کار میکنه

marshal
یک شنبه 12 اردیبهشت 1389, 09:18 صبح
ممنونم آقای saeed-kh. کد شما کار کرد. مرسی.