コード例 #1
0
        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();
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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();
        }