ListManager.CurrentChanged += currentChanged Private void WireEvents(BindingManagerBase listManager) ListManager.BindingComplete -= new BindingCompleteEventHandler(this.ErrorManager_BindingComplete) ĬurrencyManager currManager = listManager as CurrencyManager ĬurrManager.ItemChanged -= new ItemChangedEventHandler(this.ErrorManager_ItemChanged) Ĭ -= new CollectionChangeEventHandler(this.ErrorManager_BindingsChanged) ListManager.CurrentChanged -= currentChanged Private void UnwireEvents(BindingManagerBase listManager) item in the list, w/o waiting for the position to changeĮrrorManager_CurrentChanged(errorManager, EventArgs.Empty) see if there are errors at the current If (parentControl != null & this.dataSource != null & parentControl.BindingContext != null) If (!dataSourceChanged & !dataMemberChanged & !force) if nothing changed, then do not do any work Private void Set_ErrorManager(object newDataSource, string newDataMember, bool force)īool dataSourceChanged = this.DataSource != newDataSource īool dataMemberChanged = this.DataMember != newDataMember This.ContainerControl = (ContainerControl)baseComp IComponent baseComp = host.RootComponent IDesignerHost host = value.GetService(typeof(IDesignerHost)) as IDesignerHost Set_ErrorManager(value, this.DataMember, false) The data member doesn't exist in the data source, so set it to null Let's check if the datamember exists in the new data sourceĮrrorManager = parentControl.BindingContext If ( parentControl != null & value != null & String.IsNullOrEmpty(this.dataMember)) Set_ErrorManager(this.DataSource, value, false) Set_ErrorManager(this.DataSource, this.DataMember, true) ParentControl.BindingContextChanged -= propChangedEvent Private Dictionary originalColor = new Dictionary() Return extendee is Control & !(extendee is Form) & !(extendee is ToolBar) Throw new ArgumentNullException("container") Public BackgroundColorErrorProvider(IContainer container) ParentControl.BindingContextChanged += propChangedEvent PropChangedEvent = new EventHandler(ParentControl_BindingContextChanged) Public BackgroundColorErrorProvider(ContainerControl parentControl) Часть этого кода взята из ресурс msdn using System Ĭlass BackgroundColorErrorProvider: Component, IExtenderProvider, ISupportInitializeĬurrentChanged = new EventHandler(ErrorManager_CurrentChanged) Private void bindingManager_BindingComplete(object sender, BindingCompleteEventArgs e) Var bindingManager = this.BindingContext īindingManager.BindingComplete += bindingManager_BindingComplete Вы можете подписаться на BindingComplete событие this.BindingContext: private void Form1_Load(object sender, EventArgs e)
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |