예제 #1
0
		public static View LoadFloatElementLayout
			(
			  Context context
			, View convertView
			, ViewGroup parent
			, int layoutId
			, out TextView label
			, out SeekBar slider
			, out ImageView left
			, out ImageView right
			)
		{
			string msg = "DroidResources.LoadFloatElementLayout " + "layoutid=" + layoutId.ToString();
			Log.Info("MM.D", msg);
			Debug.WriteLine(msg);

			View layout = convertView ?? LoadLayout(context, parent, layoutId);
			if (layout != null)
			{
				label = layout.FindViewById<TextView>(context.Resources.GetIdentifier("dialog_LabelField", "id", context.PackageName));
				slider = layout.FindViewById<SeekBar>(context.Resources.GetIdentifier("dialog_SliderField", "id", context.PackageName));
				left = layout.FindViewById<ImageView>(context.Resources.GetIdentifier("dialog_ImageLeft", "id", context.PackageName));
				right = layout.FindViewById<ImageView>(context.Resources.GetIdentifier("dialog_ImageRight", "id", context.PackageName));
			}
			else
			{
				label = null; 
				slider = null;
				left = right = null;
			}
			return layout;
		}
예제 #2
0
 private void SeekBarOnProgressChanged(object sender, SeekBar.ProgressChangedEventArgs progressChangedEventArgs)
 {            
     // Time shifting range: 50% to 150%. Seek bar range: 0-1000
     float timeShiftingValue = (((float)_seekBar.Progress) / 10f) + 50f;
     //Console.WriteLine("SeekBarProgressChanged progress: {0} timeShiftingValue: {1}", _seekBar.Progress, timeShiftingValue);
     OnSetTimeShifting(timeShiftingValue);
 }
		public static void SetTheme(SeekBar seekBar, FlatTheme theme)
		{
			// setting thumb
			var thumb = new PaintDrawable(theme.DarkAccentColor);
			thumb.SetCornerRadius(15);
			thumb.SetIntrinsicWidth(30);
			thumb.SetIntrinsicHeight(30);
			seekBar.SetThumb(thumb);

			// progress
			var progress = new PaintDrawable(theme.BackgroundColor);
			progress.SetCornerRadius(10);
			progress.SetIntrinsicHeight(10);
			progress.SetIntrinsicWidth(5);
			progress.SetDither(true);
			var progressClip = new ClipDrawable(progress, GravityFlags.Left, ClipDrawableOrientation.Horizontal);

			// secondary progress
			var secondary = new PaintDrawable(theme.LightAccentColor);
			secondary.SetCornerRadius(10);
			secondary.SetIntrinsicHeight(10);
			var secondaryProgressClip = new ClipDrawable(secondary, GravityFlags.Left, ClipDrawableOrientation.Horizontal);

			// background
			PaintDrawable background = new PaintDrawable(theme.VeryLightAccentColor);
			background.SetCornerRadius(10);
			background.SetIntrinsicHeight(10);

			// applying drawable
			LayerDrawable ld = (LayerDrawable) seekBar.ProgressDrawable;
			ld.SetDrawableByLayerId(Android.Resource.Id.Background, background);
			ld.SetDrawableByLayerId(Android.Resource.Id.Progress, progressClip);
			ld.SetDrawableByLayerId(Android.Resource.Id.SecondaryProgress, secondaryProgressClip);
		}
예제 #4
0
 protected void InitCurrentValueSeekBar1()
 {
     CurrentValueSeekBar1 = FindViewById<SeekBar> (Resource.Id.currentValueSeekBar1);
     CurrentValueSeekBar1.Max = 400;
     CurrentValueSeekBar1.Progress = 50;
     CurrentValueSeekBar1.ProgressChanged += HandleCurrentValue1Changed;
 }
예제 #5
0
 public void OnProgressChanged(SeekBar seekBar, int progress, bool fromUser)
 {
     if (fromUser)
     {
         _textView.Text = string.Format("The you adjusted the value of the SeekBar to {0}", seekBar.Progress);
     }
 }
예제 #6
0
        protected override void OnCreate(Bundle bundle)
        {
            Console.WriteLine("EqualizerPresetsActivity - OnCreate");
            base.OnCreate(bundle);

            _navigationManager = Bootstrapper.GetContainer().Resolve<MobileNavigationManager>();
            SetContentView(Resource.Layout.EqualizerPresets);
            ActionBar.SetDisplayHomeAsUpEnabled(true);
            ActionBar.SetHomeButtonEnabled(true);

            _seekBarVolume = FindViewById<SeekBar>(Resource.Id.equalizerPresets_seekBarVolume);
            _seekBarVolume.ProgressChanged += (sender, args) => OnSetVolume(1);

            _btnBypass = FindViewById<ToggleButton>(Resource.Id.equalizerPresets_btnBypass);
            _btnBypass.Click += (sender, args) => OnBypassEqualizer();

            _outputMeter = FindViewById<OutputMeterView>(Resource.Id.equalizerPresets_outputMeterView);

            _listView = FindViewById<ListView>(Resource.Id.equalizerPresets_listView);
            _listAdapter = new EqualizerPresetsListAdapter(this, _listView, new List<EQPreset>());
            _listView.SetAdapter(_listAdapter);
            _listView.ItemClick += ListViewOnItemClick;
            _listView.ItemLongClick += ListViewOnItemLongClick;

            // Save the source activity type for later (for providing Up navigation)
            _sourceActivityType = Intent.GetStringExtra("sourceActivity");

            // Since the onViewReady action could not be added to an intent, tell the NavMgr the view is ready
            //((AndroidNavigationManager)_navigationManager).SetEqualizerPresetsActivityInstance(this);
            _navigationManager.BindEqualizerPresetsView(null, this);
        }
예제 #7
0
        protected override View OnCreateView(ViewGroup parent)
        {
            var view = base.OnCreateView(parent);
            _seekBar = view.FindViewById<SeekBar>(Sessions.Android.Resource.Id.seekBarPreference_seekBar);
            _lblTitle = view.FindViewById<TextView>(Sessions.Android.Resource.Id.seekBarPreference_lblTitle);
            _lblMinValue = view.FindViewById<TextView>(Sessions.Android.Resource.Id.seekBarPreference_lblMinValue);
            _lblMaxValue = view.FindViewById<TextView>(Sessions.Android.Resource.Id.seekBarPreference_lblMaxValue);
            _lblValue = view.FindViewById<TextView>(Sessions.Android.Resource.Id.seekBarPreference_lblValue);

            _lblTitle.Text = _title;
            _seekBar.Max = _maxValue;
            _seekBar.SetOnSeekBarChangeListener(this);

            var layout = (LinearLayout) view;
            layout.SetPadding(0, 0, 0, 0);
            layout.Orientation = Orientation.Vertical;

            // Hide standard preference widgets
            int childCount = layout.ChildCount;
            for (int i = 0; i < childCount; i++)
            {
                var v = layout.GetChildAt(i);
                if(v.Id != Android.Resource.Id.WidgetFrame)
                    v.Visibility = ViewStates.Gone;
            }

            return view;
        }
        private void SeekBar_ProgressChanged(object sender, SeekBar.ProgressChangedEventArgs e)
        {
            var seekBar = (SeekBar)sender;
            var textViewChanged = textViews[seekBar.Id];
            textViewChanged.Text = seekBar.Progress.ToString();
            Android.Graphics.Color backgroundColor; // = new Android.Graphics.Color();
            switch (seekBar.Id)
            {
                case Resource.Id.redSeekBar:
                    backgroundColor = new Android.Graphics.Color(seekBar.Progress, 0, 0);
                    finalColor.R = (byte)seekBar.Progress;
                    break;
                case Resource.Id.greenSeekBar:
                    backgroundColor = new Android.Graphics.Color(0, seekBar.Progress, 0);
                    finalColor.G = (byte)seekBar.Progress;
                    break;
                case Resource.Id.blueSeekBar:
                    backgroundColor = new Android.Graphics.Color(0, 0, seekBar.Progress);
                    finalColor.B = (byte)seekBar.Progress;
                    break;
                default:
                    backgroundColor = new Android.Graphics.Color(255, 255, 255);
                    break;
            }

            textViewChanged.SetBackgroundColor(backgroundColor);
            colorValue.SetBackgroundColor(finalColor);
            colorValue.Text = GetHexValue();
        }
예제 #9
0
        public static void DecodeFloatElementLayout(Context context, View layout, out TextView label, out SeekBar slider,
                                                    out ImageView left, out ImageView right)
        {
            if (layout == null)
            {
                label = null;
                slider = null;
                left = null;
                right = null;
                return;
            }

            label =
                layout.FindViewById<TextView>(context.Resources.GetIdentifier("dialog_LabelField", "id",
                                                                              context.PackageName));
            slider =
                layout.FindViewById<SeekBar>(context.Resources.GetIdentifier("dialog_SliderField", "id",
                                                                             context.PackageName));
            left =
                layout.FindViewById<ImageView>(context.Resources.GetIdentifier("dialog_ImageLeft", "id",
                                                                               context.PackageName));
            right =
                layout.FindViewById<ImageView>(context.Resources.GetIdentifier("dialog_ImageRight", "id",
                                                                               context.PackageName));
        }
        public void OnProgressChanged(Android.Widget.SeekBar seekBar, int progress, bool fromUser)
        {
            int newValue = progress + minValue;

            if (newValue > maxValue)
            {
                newValue = maxValue;
            }
            else if (newValue < minValue)
            {
                newValue = minValue;
            }
            else if (interval != 1 && newValue % interval != 0)
            {
                newValue = (int)Math.Round(((float)newValue) / interval) * interval;
            }

            // change rejected, revert to the previous value
            if (!CallChangeListener(newValue))
            {
                seekBar.Progress = currentValue - minValue;
                return;
            }

            // change accepted, store it
            currentValue    = newValue;
            statusText.Text = newValue.ToString();

            PersistInt(newValue);
        }
예제 #11
0
 public void OnProgressChanged(SeekBar seekBar, int progress, bool fromUser)
 {
     if(fromUser)
     {
         _requestedSeek = (double)progress / seekBar.Max;
     }
 }
예제 #12
0
 public static void SetTint(SeekBar seekBar, Color color)
 {
     ColorStateList s1 = ColorStateList.ValueOf(color);
     if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
     {
         seekBar.ThumbTintList = s1;
         seekBar.ProgressTintList = s1;
     }
     else if (Build.VERSION.SdkInt > BuildVersionCodes.GingerbreadMr1)
     {
         Drawable progressDrawable = DrawableCompat.Wrap(seekBar.ProgressDrawable);
         seekBar.ProgressDrawable = progressDrawable;
         DrawableCompat.SetTintList(progressDrawable, s1);
         if (Build.VERSION.SdkInt >= BuildVersionCodes.JellyBean)
         {
             Drawable thumbDrawable = DrawableCompat.Wrap(seekBar.Thumb);
             DrawableCompat.SetTintList(thumbDrawable, s1);
             seekBar.SetThumb(thumbDrawable);
         }
     }
     else
     {
         PorterDuff.Mode mode = PorterDuff.Mode.SrcIn;
         if (Build.VERSION.SdkInt <= BuildVersionCodes.GingerbreadMr1)
         {
             mode = PorterDuff.Mode.Multiply;
         }
         if (seekBar.IndeterminateDrawable != null)
             seekBar.IndeterminateDrawable.SetColorFilter(color, mode);
         if (seekBar.ProgressDrawable != null)
             seekBar.ProgressDrawable.SetColorFilter(color, mode);
     }
 }
예제 #13
0
 private void SeekBarOnProgressChanged(object sender, SeekBar.ProgressChangedEventArgs e)
 {
     // Pitch shifting range: -12 to +12. Seek bar range: 0-23
     int interval = _seekBar.Progress - 12;
     //Console.WriteLine("SeekBarProgressChanged progress: {0} interval: {1}", _seekBar.Progress, interval);
     OnSetInterval(interval);
 }
예제 #14
0
 private void UpdateColor(object sender, SeekBar.ProgressChangedEventArgs e)
 {
     int colR = (r.Progress * 255) / 100;
     int colG = (g.Progress * 255) / 100;
     int colB = (b.Progress * 255) / 100;
     color = new Color(colR, colG, colB);
     col.SetBackgroundColor(color);
 }
예제 #15
0
 protected void HandleUpdateSpeedChanged(object sender, SeekBar.ProgressChangedEventArgs e)
 {
     if(UpdateSpeedSeekBar.Progress == 0){
         UpdateSpeedSeekBar.Progress = 1;
     }
     UpdateTimerInterval();
     UpdateSpeedLabelText();
 }
예제 #16
0
        public void OnProgressChanged(SeekBar seekBar, int progress, bool fromUser)
        {
            _progress = progress;

            updateText();

            CallChangeListener(progress);
        }
			public void Init (TextView title, SeekBar seek)
			{
				// This called by the containing activity to supply the surrounding
				// state of the content browser that it will interact with.
				mTitleView = title;
				mSeekView = seek;
				SetNavVisibility (true);
			}
        public void OnProgressChanged(SeekBar seekBar, int progress, bool fromUser)
        {
            if (fromUser) {
                mixerValue.SetValue(this, (byte)progress);
            }

            if (listener != null)
                listener.OnProgressChanged (seekBar, progress, fromUser);
        }
예제 #19
0
		public override View OnCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
		{
			var view = inflater.Inflate (Resource.Layout.PropertyAnimationLayout, container, false);
			karmaMeter = view.FindViewById<KarmaMeter> (Resource.Id.karmaMeter);
			karmaSeeker = view.FindViewById<SeekBar> (Resource.Id.karmaSeeker);
			karmaSeeker.StopTrackingTouch +=
				(sender, e) => karmaMeter.SetKarmaValue (((double)karmaSeeker.Progress) / karmaSeeker.Max, true);

			return view;
		}
예제 #20
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate (bundle);

            SetContentView (Resource.Layout.Main);
            _imageView = FindViewById<ImageView> (Resource.Id.originalImageView);

            _seekbar = FindViewById<SeekBar> (Resource.Id.seekBar1);
            _seekbar.StopTrackingTouch += BlurImageHandler;
        }
예제 #21
0
 private void BlurImageHandler(object sender, SeekBar.StopTrackingTouchEventArgs e)
 {
     int radius = e.SeekBar.Progress;
     if (radius == 0) {
         // We don't want to blur, so just load the un-altered image.
         _imageView.SetImageResource (Resource.Drawable.dog_and_monkeys);
     } else {
         DisplayBlurredImage (radius);
     }
 }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.activity_custom);

            _progressBar = FindViewById<SmoothProgressBar>(Resource.Id.progressbar);
            _checkBoxMirror = FindViewById<CheckBox>(Resource.Id.checkbox_mirror);
            _checkBoxReversed = FindViewById<CheckBox>(Resource.Id.checkbox_reversed);
            _spinnerInterpolators = FindViewById<Spinner>(Resource.Id.spinner_interpolator);
            _seekBarSectionsCount = FindViewById<SeekBar>(Resource.Id.seekbar_sections_count);
            _seekBarStrokeWidth = FindViewById<SeekBar>(Resource.Id.seekbar_stroke_width);
            _seekBarSeparatorLength = FindViewById<SeekBar>(Resource.Id.seekbar_separator_length);
            _seekBarSpeed = FindViewById<SeekBar>(Resource.Id.seekbar_speed);
            _button = FindViewById<Button>(Resource.Id.button);
            _textViewSpeed = FindViewById<TextView>(Resource.Id.textview_speed);
            _textViewSectionsCount = FindViewById<TextView>(Resource.Id.textview_sections_count);
            _textViewSeparatorLength = FindViewById<TextView>(Resource.Id.textview_separator_length);
            _textViewStrokeWidth = FindViewById<TextView>(Resource.Id.textview_stroke_width);

            _seekBarSpeed.ProgressChanged += (s, e) =>
            {
                _speed = ((float) e.Progress + 1) / 10;
                _textViewSpeed.Text = "Speed: " + _speed;
            };

            _seekBarSectionsCount.ProgressChanged += (s, e) =>
            {
                _sectionsCount = e.Progress + 1;
                _textViewSectionsCount.Text = "Sections count: " + _sectionsCount;
            };

            _seekBarSeparatorLength.ProgressChanged += (s, e) =>
            {
                _separatorLength = e.Progress;
                _textViewSeparatorLength.Text = string.Format("Separator length: {0}dp", _separatorLength);
            };

            _seekBarStrokeWidth.ProgressChanged += (s, e) =>
            {
                _strokeWidth = e.Progress;
                _textViewStrokeWidth.Text = string.Format("Stroke width: {0}dp", _strokeWidth);
            };

            _seekBarSeparatorLength.Progress = 4;
            _seekBarSectionsCount.Progress = 4;
            _seekBarStrokeWidth.Progress = 4;
            _seekBarSpeed.Progress = 9;

            _spinnerInterpolators.Adapter = new ArrayAdapter<string>(this,
                Android.Resource.Layout.SimpleSpinnerDropDownItem,
                Resources.GetStringArray(Resource.Array.interpolators));

            _button.Click += (s, e) => SetValues();
        }
		protected override void OnCreate (Bundle bundle)
		{
			base.OnCreate (bundle);
			SetContentView (Resource.Layout.activity_propertyanimation);
			_seekBar = FindViewById<SeekBar> (Resource.Id.karmaSeeker);
			_seekBar.StopTrackingTouch += (sender, args) => {
				double karmaValue = ((double)_seekBar.Progress) / _seekBar.Max;
				_karmaMeter.SetKarmaValue (karmaValue, true);
			};
			_karmaMeter = FindViewById<KarmaMeter> (Resource.Id.karmaMeter);
		}
예제 #24
0
 private void bindAlcoholByVolumeSeekBar()
 {
     alcoholByVolumeEdit = FindViewById<TextView>(Resource.Id.TextAlcoholByVolume);
     alcoholByVolumeSeekBar = FindViewById<SeekBar>(Resource.Id.SeekBarAlcoholByVolume);
     alcoholByVolumeSeekBar.ProgressChanged += (sender, e) =>
     {
         alcoholByVolume = (double)((SeekBar)sender).Progress / 100;
         alcoholByVolumeEdit.Text = alcoholByVolume * 100 + " %";
     };
     alcoholByVolumeSeekBar.Progress = (int)(alcoholByVolume * 100);
     alcoholByVolumeEdit.Text = alcoholByVolume + " %";
 }
예제 #25
0
        private void seekBarProgressChanged(object sender, SeekBar.ProgressChangedEventArgs e)
        {
            if (e.FromUser)
            {
                SeekBar redSeekBar = FindViewById<SeekBar> (Resource.Id.redSeekBar);
                SeekBar greenSeekBar = FindViewById<SeekBar> (Resource.Id.greenSeekBar);
                SeekBar blueSeekBar = FindViewById<SeekBar> (Resource.Id.blueSeekBar);
                RelativeLayout backgroundLayout = FindViewById<RelativeLayout> (Resource.Id.backgroundLayout);

                backgroundLayout.SetBackgroundColor(Android.Graphics.Color.Argb(255, redSeekBar.Progress*255/100, greenSeekBar.Progress*255/100, blueSeekBar.Progress*255/100));
            }
        }
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            //Create the user interface in code
            var layout = new LinearLayout(this);
            layout.Orientation = Orientation.Vertical;
            layout.SetPadding(50, 25, 50, 25);

            var aLabel = new TextView(this);
            aLabel.Text = "Total Amount";

            txtAmount = new EditText(this);
            txtAmount.InputType = global::Android.Text.InputTypes.ClassNumber;
            

            scrollPeople = new SeekBar(this);
            scrollPeople.Max = 20;
			scrollPeople.Progress = 1;

            scrollTip = new SeekBar(this);
			scrollTip.Progress = 15;
            scrollTip.Max = 100;

            lblTotalCost = new TextView(this);
            lblTipAmount = new TextView(this);
            lblTotalPerPerson = new TextView(this);
            lblTipPercent = new TextView(this);
            lblNumPeople = new TextView(this);

            layout.AddView(aLabel);
            layout.AddView(txtAmount);
            layout.AddView(lblTipPercent);
            layout.AddView(scrollTip);
            layout.AddView(lblNumPeople);
            layout.AddView(scrollPeople);
            layout.AddView(lblTipAmount);
            layout.AddView(lblTotalCost);
            layout.AddView(lblTotalPerPerson);
            
            
            
            // Set our view from the "main" layout resource
            


            SetContentView(layout);

            InitializeInternal();
        }
예제 #27
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.Options);
            weightInput = FindViewById<EditText>(Resource.Id.weightInput);
            stepSizeInput = FindViewById<EditText>(Resource.Id.stepSizeInput);
            sensivityInput = FindViewById<SeekBar>(Resource.Id.sensivityInput);
            sensivityOutput = FindViewById<TextView>(Resource.Id.sensivityOutput);
            sensivityInput.SetOnSeekBarChangeListener(this);

            weightInput.Text = MainActivity.weight.ToString();
            stepSizeInput.Text = MainActivity.stepLength.ToString();
            sensivityInput.Progress = sensivityInput.Max - MainActivity.mLimit;
        }
        protected override void OnCreate (Bundle bundle)
        {
            base.OnCreate (bundle);

            SetContentView (Resource.Layout.ground_overlay_demo);

            transparencyBar = FindViewById<SeekBar> (Resource.Id.transparencySeekBar);
            transparencyBar.Max = TRANSPARENCY_MAX;
            transparencyBar.Progress = 0;

            var mapFragment = (SupportMapFragment)SupportFragmentManager.FindFragmentById (Resource.Id.map);

            mapFragment.GetMapAsync (this);
        }
		public override void OnViewCreated (View view, Bundle savedInstanceState)
		{
			base.OnViewCreated (view, savedInstanceState);
			cardView = (CardView)view.FindViewById<CardView> (Resource.Id.cardview);
			radiusSeekBar = (SeekBar)view.FindViewById (Resource.Id.cardview_radius_seekbar);
			radiusSeekBar.ProgressChanged += delegate {
				Log.Debug (TAG, string.Format ("SeekBar Radius progress : {0}", radiusSeekBar.Progress));
				cardView.Radius = radiusSeekBar.Progress;
			};

			elevationSeekBar = (SeekBar)view.FindViewById (Resource.Id.cardview_elevation_seekbar);
			elevationSeekBar.ProgressChanged+= delegate {
				Log.Debug(TAG,string.Format("SeekBar Elevation progress : {0}",elevationSeekBar.Progress));
				cardView.Elevation = elevationSeekBar.Progress;
			};
		}
예제 #30
0
        protected override void OnCreate (Bundle bundle)
        {
            base.OnCreate (bundle);

            SetContentView (Resource.Layout.camera_demo);

            animateToggle = FindViewById<CompoundButton> (Resource.Id.animate);
            customDurationToggle = FindViewById<CompoundButton> (Resource.Id.duration_toggle);
            customDurationBar = FindViewById<SeekBar> (Resource.Id.duration_bar);

            updateEnabledState ();

            var mapFragment =
                (SupportMapFragment) SupportFragmentManager.FindFragmentById (Resource.Id.map);
            mapFragment.GetMapAsync (this);
        }
예제 #31
0
        protected override void OnBindDialogView(View view)
        {
            base.OnBindDialogView(view);

            if (ShouldPersist())
                _progress = GetPersistedInt(_defaultValue + _minimumValue) - _minimumValue;

            _valueText = view.FindViewById<TextView>(Resource.Id.Label);

            _seekBar = view.FindViewById<SeekBar>(Resource.Id.SeekBar);
            _seekBar.SetOnSeekBarChangeListener(this);
            _seekBar.Max = _maximumValue;
            _seekBar.Progress = _progress;

            updateText();
        }
예제 #32
0
파일: SeekBar.cs 프로젝트: slagusev/api
 public void OnProgressChanged(SeekBar seekBar, int progress, bool fromUser)
 {
     ProgressChanged.Invoke(seekBar, new ProgressChangedEventArgs(progress, fromUser));
 }
예제 #33
0
파일: SeekBar.cs 프로젝트: slagusev/api
 public void OnStopTrackingTouch(SeekBar seekBar)
 {
     StopTrackingTouch.Invoke(seekBar, System.EventArgs.Empty);
 }
 public void OnStartTrackingTouch(Android.Widget.SeekBar seekBar)
 {
 }
 public void OnStopTrackingTouch(Android.Widget.SeekBar seekBar)
 {
     NotifyChanged();
 }