2013-09-08 2 views
0

레코드가 편집 모드 일 때 열의 값을 표시하고자하는 Radgrid와 텍스트 상자가 있습니다. 내가 얻고 자하는 값은 읽기 전용 열에 포함되어 있으며 DataKeyNames에 나열되어 있습니다. 기본적으로 항목을 만들 때 SQL 데이터베이스에서 제공 한 트랜잭션 ID입니다.Radgrid가 편집 모드 일 때 셀 값을 얻습니다.

<MasterTableView CommandItemDisplay="TopAndBottom" DataSourceID="SqlDataSource1" AutoGenerateColumns="False" DataKeyNames="TransazioneID" AllowFilteringByColumn="True"> 

나는 그것을 꺼낼 수 없다.

protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) 
{ 
    if (e.Item is GridEditableItem && e.Item.IsInEditMode) 
    { 

     GridEditableItem item = e.Item as GridEditableItem; 
      string str = item["TransazioneID"].Text; 
      TextBox1.Text = str; 

코드는 나에게 오류를 제공하지만, 아무것도 표시하지 않습니다. 편집 모드에서 레코드의 "TransactionID"값을 얻으려면 어떻게해야합니까?

답변

2

편집 모드에서 데이터 키 값을 가져 오려면 다음 코드를 시도하십시오.

protected void rdg_ItemDataBound(object sender, GridItemEventArgs e) 
    { 
     if (e.Item is GridEditableItem && e.Item.IsInEditMode) 
     { 
      GridEditableItem editedItem = e.Item as GridEditableItem; 
      string str = editedItem.GetDataKeyValue("TransazioneID").ToString(); 
      TextBox1.Text = str ; 
     } 
    } 
0

이 코드를 시도

 GridEditableItem editedItem = e.Item as GridEditableItem; 
     int tID = Int32.Parse(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["TransazioneID"].ToString()); 
관련 문제