MonoMobile.Views.DialogViewController.Dispose C# (CSharp) Method

Dispose() protected method

protected Dispose ( bool disposing ) : void
disposing bool
return void
		protected override void Dispose(bool disposing)
		{
			if (disposing)
			{
				if (BackgroundImage != null)
				{
					BackgroundImage = null;
				}

				_LeftFixedSpace.Dispose();
				_RightFixedSpace.Dispose();

				var source = TableView.Source as ViewSource;
				if (source != null)
				{
					foreach (var section in source.Sections.Values)
					{
						foreach(var listSource in section.ListSources.Values)
						{
							if (listSource != null)
							{
								listSource.Dispose();
							}
						}
					}
	
					source.Dispose();
				}

				if (_TableView != null)
				{
					_TableView.Dispose();
					_TableView = null;
				}
				
				if (_Searchbar != null)
				{
					_Searchbar.Dispose();
					_Searchbar = null;
				}
				
				if (RootView != null)
				{
					var disposable = RootView as IDisposable;
					if (disposable != null)
					{
						disposable.Dispose();
						RootView = null;
					}
				}
				
				if (ToolbarButtons != null)
				{
					foreach(var button in ToolbarButtons)
					{
						button.Dispose();
					}
				}

				if (NavbarButtons != null)
				{
					foreach (var button in NavbarButtons)
					{
						button.Dispose();
					}
				}

				Theme.Dispose();
				Theme = null;
			}

			base.Dispose(disposing);
		}
	}

Usage Example

Beispiel #1
0
        protected override void Dispose(bool disposing)
        {
            if (disposing && _Container != null)
            {
                _Container.Dispose();;
            }

            base.Dispose(disposing);
        }