문제

JavaScript를 사용하여 Telerik Radgrid 구성 요소의 행을 읽는 데 문제가 없지만 Postback이 발생할 때 Row Data Server 측에 액세스 할 수있는 것 같습니다. 나는 솔루션을 찾고있는 나이를 보냈지 만 운이 없었습니다. 모든 포인터는 크게 감사 할 것입니다.

토니

도움이 되었습니까?

해결책

당신은 그것을보고 싶을 수도 있습니다 DatakeyValues OwnertableView 객체의 속성은 주어진 행의 필드를 나타내는 값 모음에 액세스 할 수 있습니다. EditCommand 이벤트 핸들러 중에 사용합니다. 내 사이트 사용자가 그리드에서 행을 편집하기 위해 링크를 클릭하면 편집 페이지로 연결되므로 쿼리의 주어진 행에 대한 특정 정보를 전달해야합니다. 끈.

이것이 필요한 것으로 판명되면이 속성을 통해 어떤 필드를 사용할 수 있는지 정의해야합니다. 이렇게하려면 그리드의 속성 시트의 Mas 기본적으로 쉼표로 지정된 필드 이름 목록을 지정합니다.

다른 팁

나는 얼마부터 Telerik 그리드를 사용하고 선택한 행 서버 또는 클라이언트 측에서 데이터를 가져 오는 방법에 대한 문서 에서이 기사를 찾았습니다.

서버 측 고객 입장에서

도움이되기를 바랍니다.

형사

서버 측은 쉬운 부분입니다.

GridItemCollection gridRows = TestGrid.Items;
foreach (GridDataItem data in gridRows)
{
    ItemClass obj = (ItemClass)data.DataItem;
}

내가 모르는 것은 클라이언트 측 부분입니다! : [

private Int32 GetID()
{
    foreach (Telerik.Web.UI.GridDataItem dataItem in radGrid.MasterTableView.Items)
    {
        if (dataItem.Selected == true)
        {
            Int32 ID = (Int32)dataItem.GetDataKeyValue("ID");
            return ID;
        }
    }
    throw new ArgumentNullException("Id Not found");
}
private Int32 GetID()
{
    foreach (Telerik.Web.UI.GridDataItem dataItem in radGrid.MasterTableView.Items)
    {
        if (dataItem.Selected == true)
        {
           // Int32 ID = (Int32)dataItem.GetDataKeyValue("ID");
Int32 ID =Convert.ToInt32(dataItem.GetDataKeyValue("ID"));
            return ID;
        }
    }

}
//this will work

이것은 나를 위해 일하고 Radgrid.SelectedItems Collection을 사용하는 것입니다.

protected void LinkButton1_Click(object sender, EventArgs e)
    {
        List<Guid> OrderIdList = new List<Guid>();

        foreach (GridDataItem OrderItem in this.RadGrid1.SelectedItems)
        {
            OrderIdList.Add(new Guid(OrderItem.GetDataKeyValue("OrderId").ToString()));
        }
    }

동적 컨트롤을 위해 Markup 또는 Page Init에서 컨트롤을 올바르게 만든 경우 Radgrid는 상태를 올바르게 복원합니다.

데이터 키에서 열을 유지하기 위해 문제의 테이블 뷰에 알려진 경우 아래이 예와 같이 데이터 소스에서로드 된 초기 값에 액세스 할 수 있습니다.

protected T GetInitialGridData<T>(GridDataItem item, string uniqueColumnName) {
   item.ThrowIfNull("item");
   uniqueColumnName.ThrowIfNullOrEmpty("uniqueColumnName");

   return (T)item.OwnerTableView.DataKeyValues(gridItem.ItemIndex)(columnName);
}

동적 사용자 정의 템플릿 열을 사용하고 있고 현재 해당 주에있을 수있는 값에 도달 해야하는 경우 다음을 사용할 수 있습니다.

protected string GetCustomTextBoxValue(GridDataItem item, string controlID) {
   item.ThrowIfNull("item");
   controlID.ThrowIfNullOrTrimmedEmpty("controlID");

   return ((TextBox)item.FindControl(controlID)).Text;
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top