static void SearchManager_DataLoaded(object sender, DataLoadedEventArgs e) { ISearchManager sm = sender as ISearchManager; if (m_detailGridsState.Count > 0) { Xceed.Grid.DetailGrid detailGrid = m_detailGridsState[0] as Xceed.Grid.DetailGrid; int level = 0; Xceed.Grid.DetailGrid nowGrid = detailGrid; while (nowGrid != null) { nowGrid = nowGrid.ParentGrid; level++; } (detailGrid.GridControl as MyGrid).LoadLayout(level - 1); detailGrid.GridControl.Enabled = (bool)m_detailGridsState[1]; ISearchManagerWithParent smp = sm as ISearchManagerWithParent; IDisplayManager dmParent = smp.ParentDisplayManager; dmParent.Position = (int)m_detailGridsState[2]; m_detailGridsState.Clear(); } }
private static void GetDetailGridRows(GridRelatedAddressInfo info, Xceed.Grid.DetailGrid detailGrid, List <object> selectedEntities) { foreach (Xceed.Grid.DataRow dataRow in detailGrid.DataRows) { if (info.GridLevel == Feng.Grid.MyGrid.GetGridLevel(dataRow.ParentGrid) || string.IsNullOrEmpty(info.GridLevel)) { selectedEntities.Add(dataRow.Tag); } else { foreach (Xceed.Grid.DetailGrid dg in dataRow.DetailGrids) { GetDetailGridRows(info, dg, selectedEntities); } } } }