2014-10-23 1 views
0

MYSQL DB의 특정 열을 편집 할 수 있도록 datagridview를 사용하려고했습니다. 나는 빈 표로 시작하고있다. 그래서 경우 :사용자가 데이터베이스에 추가 할 새 행을 편집 할 때 Datagridview의 편집 할 수없는 기본값

... 
connection.Open(); 
mySqlDataAdapter = new MySqlDataAdapter("SELECT * FROM `expenses` ", connection); 
connection.Close(); 
DataSet DS = new DataSet(); 
mySqlDataAdapter.Fill(DS); 
dataGridView1.DataSource = DS.Tables[0]; 
... 

나에게 모든 상단에 올바른 COL 이름과 하나의 빈 행과 DataGridView에 있습니다> * 바로이 빈 행의 왼쪽에서 나는이 행의 셀을 편집하기 시작하면 바로 왼쪽이 연필 아이콘으로 바뀌고 2 번째의 새로운 "proto"행이 아래 왼쪽에 *로 표시됩니다. 이것은 괜찮습니다, 나는 그것이 표준 행동이라고 생각합니다.

제 질문은 "빈"및 "프로토"의 열 몇 개에 기본값을 항상 표시하고 시행하는 것입니다.이 행을 설명하는 데 올바른 용어를 모르는 경우가 많습니다. 프로그래밍 방식으로 이러한 행/셀에 액세스하는 방법을 모르겠습니다. 최종 줄은 내가 사용자가 특정 셀에서 새 행을 편집 할 때 편집 할 수없는 값을 갖거나 볼 수 있다는 것입니다.

그런 다음 사용자가 내가 편집 할 수있는 열을 편집합니다. 결과적으로 새로운 행이 데이터 뷰에 추가됩니다. 실제로 DB 테이블에 행을 추가하는 것은 다음 일이지만 먼저 수행 할 수 있는지 알고 싶습니다.

+0

을 읽고 질문과 대답 http://stackoverflow.com/questions/8978771/datagridview-c-sharp-default-values- in-rows-during-edit-mode 그것에 관하여 죄송합니다. – user1325143

답변

0

사용 DefaultValuesNeeded 자세한 내용은 이벤트

private void dataGridView1_DefaultValuesNeeded(object sender, 
    System.Windows.Forms.DataGridViewRowEventArgs e) 
{ 
    e.Row.Cells["Region"].Value = "WA"; 
    e.Row.Cells["City"].Value = "Redmond"; 
    e.Row.Cells["PostalCode"].Value = "98052-6399"; 
    e.Row.Cells["Country"].Value = "USA"; 
    e.Row.Cells["CustomerID"].Value = NewCustomerId(); 
} 

이미 http://msdn.microsoft.com/en-us/library/b22t666e%28v=vs.90%29.aspx

관련 문제