2011-01-18 4 views
1

터널 및 마법사 방식을 사용하지 않고 AxGridView에서 레코드를 만들고 삽입 할 수있는 방법이 있어야합니다. 지금까지 내가 인터넷에서 발견 한 것에서 유일한 예는 마법사를 사용하는 것이고 솔직히 그것이 사용자 친화적 인 접근 방법이 아니라는 것을 알았습니다.엔터프라이즈 포털의 AxGridView에서 작성/삽입을 활성화하는 방법 (Dynamics AX 2009)

누구나 AxGridView에서 직접 레코드 삽입을 시도 했습니까?

답변

1

예 AxGridView를 통해 데이터를 입력 할 수 있습니다. 해당 컨트롤에 대한 편집, 삭제 만 활성화하면됩니다. 새로운 행을 만들려면 한 가지 더 - 추가 버튼을 만들어야합니다. 새 행을 만들고 뒤에 코드를 작성해야합니다.

protected void NewLine_Click(object sender, EventArgs e) 
{ 
    int editIdx = AxGridView1.EditIndex;  

    try 
    { 
     // Save the last unsaved line if any 
     if (AxGridView1.EditIndex != -1 && AxGridView1.Rows.Count > 0) 
     { 
      this.AxGridView1.UpdateRow(AxGridView1.EditIndex, true); 
     } 


     DataSetViewRow dsvr = this.dsv.AddNew();   
    } 
    catch (System.Exception ex) 
    { 
     AxExceptionCategory exceptionCategory; 

     if (!AxControlExceptionHandler.TryHandleException(this, ex, out exceptionCategory)) 
     { 
      // Throw the fatal exception 
      throw; 
     } 
     if (exceptionCategory == AxExceptionCategory.NonFatal) 
     { 
      AxGridView1.EditIndex = editIdx; 
     } 
    } 
} 

private DataSetView dsv //get dataset view 
    { 
     get 
     { 
      DataSet dataSet = this.AxDataSource1.GetDataSet(); 
      return dataSet.DataSetViews[this.AxGridView1.DataMember]; 
     } 
    } 
+0

답이 맞습니다. 내가해야 할 몇 가지 다른 것들이있다. 실제로 Dynamics AX 2009와 함께 제공되는 EPProjTimeSheet.ascx.cs 파일에서 해결책을 찾았습니다. – Skaue

관련 문제