コード例 #1
0
        protected override void Dispose(bool disposing)
        {
            if (_disposed)
            {
                return;
            }

            _disposed = true;
            if (disposing)
            {
                _disposed = true;
                _tracker?.Dispose();
                _tracker = null;
                SetOnCheckedChangeListener(null);
                OnFocusChangeListener = null;

                if (Element != null)
                {
                    Element.PropertyChanged -= OnElementPropertyChanged;

                    if (Android.Platform.GetRenderer(Element) == this)
                    {
                        Element.ClearValue(Android.Platform.RendererProperty);
                    }

                    Element = null;
                }
            }

            base.Dispose(disposing);
        }
コード例 #2
0
        protected override void Dispose(bool disposing)
        {
            if (_isDisposed)
            {
                return;
            }

            _isDisposed = true;

            ReleaseControl();

            if (disposing)
            {
                SetOnClickListener(null);
                SetOnTouchListener(null);

                _automationPropertiesProvider?.Dispose();
                _tracker?.Dispose();

                if (Element != null)
                {
                    Element.PropertyChanged -= OnElementPropertyChanged;

                    if (Platform.GetRenderer(Element) == this)
                    {
                        Element.ClearValue(Platform.RendererProperty);
                    }
                }
            }

            base.Dispose(disposing);
        }
コード例 #3
0
ファイル: ScrollViewRenderer.cs プロジェクト: lhx11187/maui
        protected override void Dispose(bool disposing)
        {
            if (_disposed)
            {
                return;
            }

            _disposed = true;

            if (disposing)
            {
                SetElement(null);
                Tracker?.Dispose();
                Tracker = null;
                RemoveAllViews();
                _container?.Dispose();
                _container = null;
            }

            base.Dispose(disposing);
        }
コード例 #4
0
        protected override void Dispose(bool disposing)
        {
            if (_isDisposed)
            {
                return;
            }

            _isDisposed = true;

            if (disposing)
            {
                SetOnClickListener(null);
                SetOnTouchListener(null);
                OnFocusChangeListener = null;
                SetOnCheckedChangeListener(null);

                if (Element != null)
                {
                    Element.PropertyChanged -= OnElementPropertyChanged;
                }

                _automationPropertiesProvider?.Dispose();
                _tracker?.Dispose();
                _visualElementRenderer?.Dispose();
                _backgroundTracker?.Dispose();
                _backgroundTracker = null;

                if (Element != null)
                {
                    if (AppCompat.Platform.GetRenderer(Element) == this)
                    {
                        Element.ClearValue(AppCompat.Platform.RendererProperty);
                    }
                }
            }

            base.Dispose(disposing);
        }