public void FormView_Events ()
		{
			ResetEvents ();
			Poker fv = new Poker ();
			fv.Page = new Page ();
			fv.Init += new EventHandler (fv_Init);
			fv.ItemCommand += new FormViewCommandEventHandler (fv_ItemCommand);
			fv.ItemCreated += new EventHandler (fv_ItemCreated);
			fv.ItemDeleted += new FormViewDeletedEventHandler (fv_ItemDeleted);
			fv.ItemDeleting += new FormViewDeleteEventHandler (fv_ItemDeleting);
			fv.ItemInserted += new FormViewInsertedEventHandler (fv_ItemInserted);
			fv.ItemInserting += new FormViewInsertEventHandler (fv_ItemInserting);
			fv.ItemUpdated += new FormViewUpdatedEventHandler (fv_ItemUpdated);
			fv.ItemUpdating += new FormViewUpdateEventHandler (fv_ItemUpdating);
			fv.ModeChanged += new EventHandler (fv_ModeChanged);
			fv.ModeChanging += new FormViewModeEventHandler (fv_ModeChanging);
			fv.PageIndexChanged += new EventHandler (fv_PageIndexChanged);
			fv.PageIndexChanging += new FormViewPageEventHandler (fv_PageIndexChanging);

			Assert.AreEqual (false, init, "BeforeInit");
			fv.DoOnInit (new EventArgs ());
			Assert.AreEqual (true, init, "AfterInit");
			Assert.AreEqual (false, itemCommand, "BeforeItemCommandEvent");
			Button bt = new Button ();
			fv.DoOnItemCommand (new FormViewCommandEventArgs (bt, new CommandEventArgs ("", null)));
			Assert.AreEqual (true, itemCommand, "AfterItemCommandEvent");
			Assert.AreEqual (false, itemCreated, "BeforeItemCreatedEvent");
			fv.DoOnItemCreated (new EventArgs ());
			Assert.AreEqual (true, itemCreated, "AfterItemCreatedEvent");
			Assert.AreEqual (false, itemDeleted, "BeforeItemDeletedEvent");
			fv.DoOnItemDeleted (new FormViewDeletedEventArgs (3, new Exception ()));
			Assert.AreEqual (true, itemDeleted, "AfterItemDeletedEvent");
			Assert.AreEqual (false, itemDeleting, "BeforeItemDeletingEvent");
			fv.DoOnItemDeleting (new FormViewDeleteEventArgs (1));
			Assert.AreEqual (true, itemDeleting, "AfterItemDeletingEvent");
			Assert.AreEqual (false, itemInserted, "BeforeItemInsertedEvent");
			fv.DoOnItemInserted (new FormViewInsertedEventArgs (2, new Exception ()));
			Assert.AreEqual (true, itemInserted, "AfterItemInsetedEvent");
			Assert.AreEqual (false, itemInserting, "BeforeItemInsertingEvent");
			fv.DoOnItemInserting (new FormViewInsertEventArgs (bt));
			Assert.AreEqual (true, itemInserting, "AfterItemInsetingEvent");
			Assert.AreEqual (false, itemUpdated, "BeforeItemUpdatedEvent");
			fv.DoOnItemUpdated (new FormViewUpdatedEventArgs (1, new Exception ()));
			Assert.AreEqual (true, itemUpdated, "AfterItemUpdatedEvent");
			Assert.AreEqual (false, itemUpdating, "BeforeItemUpdatingEvent");
			fv.DoOnItemUpdating (new FormViewUpdateEventArgs (bt));
			Assert.AreEqual (true, itemUpdating, "AfterItemUpdatingEvent");
			Assert.AreEqual (false, modeChanged, "BeforeModeChangedEvent");
			fv.DoOnModeChanged (new EventArgs ());
			Assert.AreEqual (true, modeChanged, "AfterModeChangedEvent");
			Assert.AreEqual (false, modeChanging, "BeforeModeChangingEvent");
			fv.DoOnModeChanging (new FormViewModeEventArgs (FormViewMode.Edit, true));
			Assert.AreEqual (true, modeChanging, "AfterModeChangingEvent");
			Assert.AreEqual (false, pageIndexChanged, "BeforePageIndexChangedEvent");
			fv.DoOnPageIndexChanged (new EventArgs ());
			Assert.AreEqual (true, pageIndexChanged, "AfterPageIndexChangedEvent");
			Assert.AreEqual (false, pageIndexChanging, "BeforePageIndexChangingEvent");
			fv.DoOnPageIndexChanging (new FormViewPageEventArgs (1));
			Assert.AreEqual (true, pageIndexChanging, "AfterPageIndexChangingEvent");
		}