public override void Search() { MainRowList.Clear(); GetMaindata(); if (SearchWindow == null) { SearchWindow = new GenericSearchWindow(GetSearchModel()); } GenericSearchViewModel <TransferHeader> vm = new GenericSearchViewModel <TransferHeader>() { Title = "Transfer Search" }; vm.FilteredItemsList = MainRowList; vm.ItemsList = MainRowList; vm.ResultItemsList.CollectionChanged += (s, e) => { if (e.Action == NotifyCollectionChangedAction.Add) { SelectedMainRow = vm.ResultItemsList[e.NewStartingIndex]; } RaisePropertyChanged(nameof(IsReadOnly)); }; vm.GetDataCommand = new SilverlightCommands.RelayCommand((o) => { Filter = vm.Filter; ValuesObjects = vm.ValuesObjects; GetMaindata(); }, (o) => { return(true);//هنا الصلاحيات }); SearchWindow.DataContext = vm; base.Search(); }
public void SearchLookup(ObservableCollection <T> searchlist, T selectedRecord, RelayCommand getData, string title, Models.LookupItemModel Columns, RelayCommand getSelected = null) { if (Columns == null) { throw new ArgumentException(nameof(Columns)); } GenericSearchWindow SearchWindow = new GenericSearchWindow(new ObservableCollection <SearchColumnModel>() { new SearchColumnModel() { Header = strings.Code, PropertyPath = Columns.CodePath, }, new SearchColumnModel() { Header = strings.EnglishName, PropertyPath = Columns.NameEnPath, }, }); this.Title = title; this.FilteredItemsList = searchlist; this.ItemsList = searchlist; this.ResultItemsList.CollectionChanged += (s, e) => { if (e.Action == NotifyCollectionChangedAction.Add) { selectedRecord = this.ResultItemsList[e.NewStartingIndex]; } if (getSelected != null) { if (getSelected.CanExecute(null)) { getSelected.Execute(null); } } }; this.GetDataCommand = getData; SearchWindow.DataContext = this; SearchWindow.Show(); }