summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Controls/ViewContainers/EventViewContainer.cs
blob: 2095c03775aa247d06e9c7bea8bb3deb7a87290b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
using System;

namespace Xamarin.Forms.Controls
{
	internal class EventViewContainer<T> : ViewContainer<T> 
		where T : View
	{
		string _formsMember;
		Label _eventLabel;
		int _numberOfTimesFired;

		public EventViewContainer (Enum formsMember, T view) : base (formsMember, view)
		{
			_numberOfTimesFired = 0;

			_formsMember = formsMember.ToString ();
			
			_eventLabel = new Label {
				AutomationId = formsMember + "EventLabel",
				Text = "Event: " + _formsMember + " (none)"
			};

			ContainerLayout.Children.Add (_eventLabel);
		}

		public void EventFired ()
		{
			_numberOfTimesFired++;
			_eventLabel.Text = "Event: " + _formsMember + " (fired " + _numberOfTimesFired + ")";
		}
	}
}