public static void BindDataAsync(this MyRepositoryItemGridLookUpEdit repositoryItem, string entityName, string keyFieldName, List <Guid> selectedIds) { var worker = new BackgroundWorker(); var context = new SearchLookUpEditLoadDataContext { RepositoryItem = repositoryItem }; repositoryItem.View.LoadDefaultLayout(entityName); repositoryItem.View.InitColumns(entityName); repositoryItem.GridSelection = new GridCheckMarksSelection(repositoryItem.View); worker.DoWork += (s, e) => { var query = repositoryItem.View.CreateQuery(entityName, null, null); var results = query.ToArrayList(); var selectedObjects = (from object result in results let dynamicResult = new SysBits.Reflection.ReflectionProxy(result) let id = (Guid)dynamicResult.GetProperty(keyFieldName) where selectedIds.Contains(id) select result).ToList(); context.Result = results; context.SelectedObjects = selectedObjects; e.Result = context; }; worker.RunWorkerCompleted += WorkerRunWorkerCompleted; worker.RunWorkerAsync(); }
public static void BindData(this MyRepositoryItemGridLookUpEdit repositoryItem, string entityName, string keyFieldName, List <Guid> selectedIds) { repositoryItem.View.LoadDefaultLayout(entityName); repositoryItem.View.InitColumns(entityName); repositoryItem.GridSelection = new GridCheckMarksSelection(repositoryItem.View); var query = repositoryItem.View.CreateQuery(entityName, null, null); var results = query.ToArrayList(); var selectedObjects = (from object result in results let dynamicResult = new SysBits.Reflection.ReflectionProxy(result) let id = (Guid)dynamicResult.GetProperty(keyFieldName) where selectedIds.Contains(id) select result).ToList(); repositoryItem.DataSource = results; repositoryItem.GridSelection.SelectAll(selectedObjects); }
public static void BindDataAsync(this MyRepositoryItemGridLookUpEdit repositoryItem, string entityName, string keyFieldName, List <Guid> selectedIds) { var worker = new BackgroundWorker(); repositoryItem.View.InitWithDefaultLayout(entityName); repositoryItem.GridSelection = new GridCheckMarksSelection(repositoryItem.View); var context = new MySearchLookUpEditLoadDataContext { RepositoryItem = repositoryItem }; worker.DoWork += (s, e) => { var results = ListData(entityName); var selectedObjects = (from object result in results let id = (Guid)result.GetType().GetProperty(keyFieldName).GetValue(result, null) where selectedIds.Contains(id) select result).ToList(); context.Result = results; context.SelectedObjects = selectedObjects; e.Result = context; }; worker.RunWorkerCompleted += MyWorkerRunWorkerCompleted; worker.RunWorkerAsync(); }