2012-03-29 6 views
0
클릭

내 Telerik : RadGrid 태그 :telerik

<telerik:RadGrid ID="grdSettlement" runat="server" AllowFilteringByColumn="True" 
    DataSourceID="SqlDataSource1" AllowAutomaticDeletes="True" AllowAutomaticUpdates="True" 
    AllowAutomaticInserts="true" OnInsertCommand="grdSettlement_InsertCommand"> 

내 열 :이 액세스 할 수

<telerik:GridTemplateColumn DataField="NO" FilterControlAltText="Filter NO column" 
       HeaderText="NO" SortExpression="NO" UniqueName="NO" DataType="System.Int64"> 
       <InsertItemTemplate> 
        <telerik:RadNumericTextBox runat="server" ID="No"> 
        </telerik:RadNumericTextBox> 
       </InsertItemTemplate> 
       <ItemTemplate> 
        <%# Eval("NO") %> 
       </ItemTemplate> 
      </telerik:GridTemplateColumn> 

C# 코드 :

protected void grdSettlement_InsertCommand(object source, GridItemEventArgs e) 
{ 
    ((e.Item as GridEditableItem)["NO"].Controls[0] as TextBox).Text = "007"; 
} 

나는 가 도와 ... 일부 코드는하지만 나에게 컴파일 오류를주고 있다는 것을 쓰기 수 이것을 해결하십시오 ...

답변

2

그것은이 작업 있어요 :

에서 .aspx

<telerik:RadGrid ID="grdSettlement" runat="server" AllowFilteringByColumn="True" 
    CellSpacing="0" DataSourceID="SqlDataSource1" GridLines="None" AllowAutomaticDeletes="True" 
    AllowAutomaticUpdates="True" AutoGenerateColumns="False" AllowAutomaticInserts="true" 
    OnItemDataBound="grdSettlement_ItemDataBound"> 

.aspx.cs

protected void grdSettlement_ItemDataBound(object sender, GridItemEventArgs e) 
{ 
    if (e.Item.IsInEditMode) 
    { 
     GridEditableItem item = (GridEditableItem)e.Item; 
     RadNumericTextBox txtNo = item.FindControl("txtNo") as RadNumericTextBox; 
     txtNo.Value = 7; 
    } 
} 
0
//protected void grdSettlement_InsertCommand(object source, GridItemEventArgs e) 
protected void grdSettlement_InsertCommand(object source, GridCommandEventArgs e) 
{ 
    GridEditableItem ge = e.Item as GridEditableItem; 
    if (ge != null) 
    { 
     //Good way is change TextBox ID 
     TextBox tb = ge["No"].FindControl("No") as TextBox; 
     if (tb != null) 
     { 
      tb.Text = "007"; 
     } 
    } 
} 

제어가 먼저 시작될 필요는 없습니다.
사용해보기.

+0

오류 : 컴파일 오류 설명 : 오류가이 요청을 제공하는 데 필요한 리소스 컴파일하는 동안 오류가 발생했습니다. 다음 특정 오류 정보를 검토하고 소스 코드를 적절하게 수정하십시오. 컴파일러 오류 메시지 : CS: Ankur

+0

소스 오류 없음 과부하 줄 329 : DataSourceID = "SqlDataSource1"AllowAutomaticDeletes = "True"AllowAutomaticUpdates = "True" Line 330 : AllowAutomaticInserts = "true"OnInsertCommand = "grdSettlement_InsertCommand"> – Ankur

+0

내 실수. 나는 EventArgs 매개 변수가 correct.protected인지 확인하지 않았다. grdSettlement_InsertCommand (객체 소스, GridCommandEventArgs e) –

0

아래 코드를 확인하십시오.

에서 .aspx

<telerik:GridTemplateColumn DataField="NO" FilterControlAltText="Filter NO column" 
        HeaderText="NO" SortExpression="NO" UniqueName="NO" DataType="System.Int64"> 
        <InsertItemTemplate> 
         <telerik:RadNumericTextBox runat="server" ID="txtNo"> 
         </telerik:RadNumericTextBox> 
        </InsertItemTemplate> 
        <ItemTemplate> 
         <%# Eval("NO") %> 
        </ItemTemplate> 
       </telerik:GridTemplateColumn> 

.aspx.cs

protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) 
    { 

if (e.Item is GridEditableItem && e.Item.IsInEditMode && e.Item is GridDataInsertItem) 
     { 
       GridEditableItem item = (GridEditableItem)e.Item; 
       RadNumericTextBox txtNo = item.FindControl("txtNo") as RadNumericTextBox; 
       txtNo.Value = 7; 
     } 

} 
+0

저에게 해답을 주려고 고맙습니다. 이. 하지만 이것은 작동하지 않습니다 .... – Ankur