2011-10-13 3 views
0

vb.net에서 C#을 처음 접했고 지금 당장 모의 작업 응용 프로그램을 만들고 있습니다. 다음 코드에 문제가 있습니다. 이미지를 그림으로 그려 응용 프로그램을 종료하면 아무런 변화가 없습니다. 행을 옮기더라도. 그러나 이미지를 업로드하는 경우 다른 행으로 이동 한 다음 다른 이미지를 추가하십시오. 응용 프로그램을 종료하면 첫 번째 이미지는 두 번째 이미지에는 나타나지 않지만 두 번째 이미지는 사라집니다.C# 바운드 테이블 어댑터가 두 번 호출 될 때까지 업데이트되지 않음

요약하면 업데이트를 실제로 수행하기 전에 다른 레코드로 업로드를 시도해야합니다.

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using System.IO; 

namespace DBUserManagement 
{  
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 
      // TODO: This line of code loads data into the 'dsUsers.Users' table. You can move, or remove it, as needed. 
      this.usersTableAdapter.Fill(this.dsUsers.Users); 
     } 

     private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) 
     { 
      OpenFileDialog ofd = new OpenFileDialog(); 
      if (DialogResult.OK == ofd.ShowDialog()) 
      { 
       imgUser.SizeMode = PictureBoxSizeMode.StretchImage; 
       imgUser.Image = new Bitmap(ofd.OpenFile()); 
       //update bound field. 
       usersTableAdapter.Update(dsUsers); 
      } 
     } 
    } 
} 

제가 누락되었거나 제대로 이해하지 못하는 것에 대한 아이디어가 있습니까? 어떤 도움을 주셔서 감사합니다.

/P

답변

1

대답은 내가 BindingSource에의 .EndEdit()를 호출 할 필요했다; 방법.

그래서 나는 아직도 뭔가를 잡는 바인딩 소스에 이르기까지 추측하고 있습니다.

나는 옳은 길을 걷고있는 것 같아 MSDN에서 세부 사항을 찾았다.