protected override void OnSelectedItemsChanged(IEnumerable <Interface> newValue) { base.OnSelectedItemsChanged(newValue); serverFilterPredicate = (server) => newValue.Select(item => RelatedServerPredicate(item)).Any(pred => pred(server)); typeLibraryFilterPredicate = (typeLibrary) => newValue.Select(item => RelatedTypeLibraryPredicate(item)).Any(pred => pred(typeLibrary)); ServerCollection.Refresh(); TypeLibraryCollection.Refresh(); }
protected override void OnSelectedItemsChanged(IEnumerable <TypeLibrary> newValue) { base.OnSelectedItemsChanged(newValue); interfaceFilterPredicate = (intf) => newValue.Select(item => RelatedInterfacePredicate(item)).Any(pred => pred(intf)); serverFilterPredicate = (server) => newValue.Select(item => RelatedServerPredicate(item)).Any(pred => pred(server)); InterfaceCollection.Refresh(); ServerCollection.Refresh(); }
public MasterInterfaceCollection(Browser browser) : base(browser) { ServerCollection = new ServerCollection(browser, ServerFilter); TypeLibraryCollection = new TypeLibraryCollection(browser, TypeLibraryFilter); BindingOperations.SetBinding(ServerCollection, ServerCollection.ItemsProperty, new Binding("ServerCollection.Items") { Source = browser, Mode = BindingMode.OneWay }); BindingOperations.SetBinding(TypeLibraryCollection, TypeLibraryCollection.ItemsProperty, new Binding("TypeLibraryCollection.Items") { Source = browser, Mode = BindingMode.OneWay }); }