// This sample shows the Entry form functionality of the Racetracker
// race management application. It is written in C++.NET
// with data stored in an XML file. (It still has a few bugs.)
#pragma once
#using <System.xml.dll>
#using <mscorlib.dll>
namespace RacetrackerCPP
{
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
using namespace System::IO;
using namespace System::Xml;
/// <summary>
/// Summary for Form1
///
/// WARNING: If you change the name of this class, you will need to change the
/// 'Resource File Name' property for the managed resource compiler tool
/// associated with all .resx files this class depends on. Otherwise,
/// the designers will not be able to interact properly with localized
/// resources associated with this form.
/// </summary>
public __gc class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
// Populate the Class combo box.
DataSet* dsRunClasses = new DataSet();
String* path = Directory::GetCurrentDirectory();
dsRunClasses->ReadXml(String::Concat(path, "\\_ClassRun.xml"));
cboClass->DataSource = dsRunClasses;
cboClass->DisplayMember = "_ClassRun.Class";
cboClass->ValueMember = "_ClassRun.Class";
// Bind the controls to the Entry table fields.
dsEntries->ReadXml(String::Concat(path, "\\Entry.xml"));
txtFName->DataBindings->Add("Text", dsEntries, "Entry.FirstName");
txtLName->DataBindings->Add("Text", dsEntries, "Entry.LastName");
txtAddress->DataBindings->Add("Text", dsEntries, "Entry.Address");
txtCity->DataBindings->Add("Text", dsEntries, "Entry.City");
txtState->DataBindings->Add("Text", dsEntries, "Entry.State");
txtZip->DataBindings->Add("Text", dsEntries, "Entry.Zip");
txtPhone->DataBindings->Add("Text", dsEntries, "Entry.Phone");
txtEmail->DataBindings->Add("Text", dsEntries, "Entry.Email");
txtBirthdate->DataBindings->Add("Text", dsEntries, "Entry.Birthdate");
cboGender->DataBindings->Add("Text", dsEntries, "Entry.Gender");
cboClass->DataBindings->Add("Text", dsEntries, "Entry.Class");
txtBibNumber->DataBindings->Add("Text", dsEntries, "Entry.BibNum");
txtID->DataBindings->Add("Text", dsEntries, "Entry.RaceKey");
//bmb = this->BindingContext->Item[dsEntries, S"Entry"];
//bmb->onPositionChangedHandler += new EventHandler(BindingManagerBase::onPositionChangedHandler);
//bmb->Position = 0;
int intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
int intCount = this->BindingContext->get_Item(dsEntries, S"Entry")->Count;
lblPosition->Text = String::Format(S"{0} of {1}", __box(intPosition), __box(intCount));
}
protected:
void Dispose(Boolean disposing)
{
if (disposing && components)
{
components->Dispose();
}
__super::Dispose(disposing);
}
private: System::Windows::Forms::TabControl * tabControl1;
private: System::Windows::Forms::TabPage * tabPage1;
private: System::Windows::Forms::TextBox * txtID;
private: System::Windows::Forms::Label * label13;
private: System::Windows::Forms::Button * btnSave;
private: System::Windows::Forms::Button * btnAdd;
private: System::Windows::Forms::Button * button1;
private: System::Windows::Forms::Label * lblPosition;
private: System::Windows::Forms::Button * btnLast;
private: System::Windows::Forms::Button * btnNext;
private: System::Windows::Forms::Button * btnPrev;
private: System::Windows::Forms::Button * btnFirst;
private: System::Windows::Forms::Label * label11;
private: System::Windows::Forms::ComboBox * cboClass;
private: System::Windows::Forms::Label * label12;
private: System::Windows::Forms::ComboBox * cboGender;
private: System::Windows::Forms::TextBox * txtZip;
private: System::Windows::Forms::TextBox * txtEmail;
private: System::Windows::Forms::TextBox * txtState;
private: System::Windows::Forms::TextBox * txtLName;
private: System::Windows::Forms::TextBox * txtBibNumber;
private: System::Windows::Forms::TextBox * txtBirthdate;
private: System::Windows::Forms::TextBox * txtPhone;
private: System::Windows::Forms::TextBox * txtCity;
private: System::Windows::Forms::TextBox * txtAddress;
private: System::Windows::Forms::TextBox * txtFName;
private: System::Windows::Forms::Label * label10;
private: System::Windows::Forms::Label * label9;
private: System::Windows::Forms::Label * label8;
private: System::Windows::Forms::Label * label7;
private: System::Windows::Forms::Label * label6;
private: System::Windows::Forms::Label * label5;
private: System::Windows::Forms::Label * label4;
private: System::Windows::Forms::Label * label3;
private: System::Windows::Forms::Label * label2;
private: System::Windows::Forms::Label * label1;
private: System::Windows::Forms::TabPage * tabPage2;
private: System::Windows::Forms::TabPage * tabPage3;
private: System::Windows::Forms::TabPage * tabPage4;
static DataSet * dsEntries = new DataSet();
//static BindingManagerBase * bmb;
static Boolean booNewRow = false;
private:
/// <summary>
/// Required designer variable.
/// </summary>
System::ComponentModel::Container * components;
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
void InitializeComponent(void)
{
this->tabControl1 = new System::Windows::Forms::TabControl();
this->tabPage1 = new System::Windows::Forms::TabPage();
this->txtID = new System::Windows::Forms::TextBox();
this->label13 = new System::Windows::Forms::Label();
this->btnSave = new System::Windows::Forms::Button();
this->btnAdd = new System::Windows::Forms::Button();
this->button1 = new System::Windows::Forms::Button();
this->lblPosition = new System::Windows::Forms::Label();
this->btnLast = new System::Windows::Forms::Button();
this->btnNext = new System::Windows::Forms::Button();
this->btnPrev = new System::Windows::Forms::Button();
this->btnFirst = new System::Windows::Forms::Button();
this->label11 = new System::Windows::Forms::Label();
this->cboClass = new System::Windows::Forms::ComboBox();
this->label12 = new System::Windows::Forms::Label();
this->cboGender = new System::Windows::Forms::ComboBox();
this->txtZip = new System::Windows::Forms::TextBox();
this->txtEmail = new System::Windows::Forms::TextBox();
this->txtState = new System::Windows::Forms::TextBox();
this->txtLName = new System::Windows::Forms::TextBox();
this->txtBibNumber = new System::Windows::Forms::TextBox();
this->txtBirthdate = new System::Windows::Forms::TextBox();
this->txtPhone = new System::Windows::Forms::TextBox();
this->txtCity = new System::Windows::Forms::TextBox();
this->txtAddress = new System::Windows::Forms::TextBox();
this->txtFName = new System::Windows::Forms::TextBox();
this->label10 = new System::Windows::Forms::Label();
this->label9 = new System::Windows::Forms::Label();
this->label8 = new System::Windows::Forms::Label();
this->label7 = new System::Windows::Forms::Label();
this->label6 = new System::Windows::Forms::Label();
this->label5 = new System::Windows::Forms::Label();
this->label4 = new System::Windows::Forms::Label();
this->label3 = new System::Windows::Forms::Label();
this->label2 = new System::Windows::Forms::Label();
this->label1 = new System::Windows::Forms::Label();
this->tabPage2 = new System::Windows::Forms::TabPage();
this->tabPage3 = new System::Windows::Forms::TabPage();
this->tabPage4 = new System::Windows::Forms::TabPage();
this->tabControl1->SuspendLayout();
this->tabPage1->SuspendLayout();
this->SuspendLayout();
//
// tabControl1
//
this->tabControl1->Controls->Add(this->tabPage1);
this->tabControl1->Controls->Add(this->tabPage2);
this->tabControl1->Controls->Add(this->tabPage3);
this->tabControl1->Controls->Add(this->tabPage4);
this->tabControl1->Location = System::Drawing::Point(8, 5);
this->tabControl1->Name = S"tabControl1";
this->tabControl1->SelectedIndex = 0;
this->tabControl1->Size = System::Drawing::Size(488, 227);
this->tabControl1->TabIndex = 1;
//
// tabPage1
//
this->tabPage1->Controls->Add(this->txtID);
this->tabPage1->Controls->Add(this->label13);
this->tabPage1->Controls->Add(this->btnSave);
this->tabPage1->Controls->Add(this->btnAdd);
this->tabPage1->Controls->Add(this->button1);
this->tabPage1->Controls->Add(this->lblPosition);
this->tabPage1->Controls->Add(this->btnLast);
this->tabPage1->Controls->Add(this->btnNext);
this->tabPage1->Controls->Add(this->btnPrev);
this->tabPage1->Controls->Add(this->btnFirst);
this->tabPage1->Controls->Add(this->label11);
this->tabPage1->Controls->Add(this->cboClass);
this->tabPage1->Controls->Add(this->label12);
this->tabPage1->Controls->Add(this->cboGender);
this->tabPage1->Controls->Add(this->txtZip);
this->tabPage1->Controls->Add(this->txtEmail);
this->tabPage1->Controls->Add(this->txtState);
this->tabPage1->Controls->Add(this->txtLName);
this->tabPage1->Controls->Add(this->txtBibNumber);
this->tabPage1->Controls->Add(this->txtBirthdate);
this->tabPage1->Controls->Add(this->txtPhone);
this->tabPage1->Controls->Add(this->txtCity);
this->tabPage1->Controls->Add(this->txtAddress);
this->tabPage1->Controls->Add(this->txtFName);
this->tabPage1->Controls->Add(this->label10);
this->tabPage1->Controls->Add(this->label9);
this->tabPage1->Controls->Add(this->label8);
this->tabPage1->Controls->Add(this->label7);
this->tabPage1->Controls->Add(this->label6);
this->tabPage1->Controls->Add(this->label5);
this->tabPage1->Controls->Add(this->label4);
this->tabPage1->Controls->Add(this->label3);
this->tabPage1->Controls->Add(this->label2);
this->tabPage1->Controls->Add(this->label1);
this->tabPage1->Location = System::Drawing::Point(4, 22);
this->tabPage1->Name = S"tabPage1";
this->tabPage1->Size = System::Drawing::Size(480, 201);
this->tabPage1->TabIndex = 3;
this->tabPage1->Text = S"Enter Racers";
//
// txtID
//
this->txtID->BackColor = System::Drawing::SystemColors::Control;
this->txtID->BorderStyle = System::Windows::Forms::BorderStyle::None;
this->txtID->Enabled = false;
this->txtID->Font = new System::Drawing::Font(S"Microsoft Sans Serif", 8.25F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->txtID->Location = System::Drawing::Point(408, 136);
this->txtID->Name = S"txtID";
this->txtID->Size = System::Drawing::Size(48, 13);
this->txtID->TabIndex = 63;
this->txtID->Text = S"";
this->txtID->TextAlign = System::Windows::Forms::HorizontalAlignment::Center;
//
// label13
//
this->label13->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label13->Location = System::Drawing::Point(376, 136);
this->label13->Name = S"label13";
this->label13->Size = System::Drawing::Size(32, 23);
this->label13->TabIndex = 62;
this->label13->Text = S"ID:";
this->label13->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// btnSave
//
this->btnSave->Font = new System::Drawing::Font(S"Comic Sans MS", 10, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->btnSave->Location = System::Drawing::Point(408, 160);
this->btnSave->Name = S"btnSave";
this->btnSave->Size = System::Drawing::Size(56, 24);
this->btnSave->TabIndex = 61;
this->btnSave->Text = S"Save";
this->btnSave->Click += new System::EventHandler(this, btnSave_Click);
//
// btnAdd
//
this->btnAdd->Font = new System::Drawing::Font(S"Comic Sans MS", 10, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->btnAdd->Location = System::Drawing::Point(352, 160);
this->btnAdd->Name = S"btnAdd";
this->btnAdd->Size = System::Drawing::Size(56, 24);
this->btnAdd->TabIndex = 60;
this->btnAdd->Text = S"Add";
this->btnAdd->Click += new System::EventHandler(this, btnAdd_Click);
//
// button1
//
this->button1->Font = new System::Drawing::Font(S"Comic Sans MS", 10, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->button1->Location = System::Drawing::Point(296, 160);
this->button1->Name = S"button1";
this->button1->Size = System::Drawing::Size(56, 24);
this->button1->TabIndex = 59;
this->button1->Text = S"Delete";
this->button1->Click += new System::EventHandler(this, button1_Click);
//
// lblPosition
//
this->lblPosition->BorderStyle = System::Windows::Forms::BorderStyle::Fixed3D;
this->lblPosition->Location = System::Drawing::Point(160, 160);
this->lblPosition->Name = S"lblPosition";
this->lblPosition->Size = System::Drawing::Size(80, 23);
this->lblPosition->TabIndex = 58;
this->lblPosition->TextAlign = System::Drawing::ContentAlignment::MiddleCenter;
//
// btnLast
//
this->btnLast->Font = new System::Drawing::Font(S"Microsoft Sans Serif", 8.25F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->btnLast->Location = System::Drawing::Point(264, 160);
this->btnLast->Name = S"btnLast";
this->btnLast->Size = System::Drawing::Size(24, 24);
this->btnLast->TabIndex = 57;
this->btnLast->Text = S">|";
this->btnLast->Click += new System::EventHandler(this, btnLast_Click);
//
// btnNext
//
this->btnNext->Font = new System::Drawing::Font(S"Microsoft Sans Serif", 8.25F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->btnNext->Location = System::Drawing::Point(240, 160);
this->btnNext->Name = S"btnNext";
this->btnNext->Size = System::Drawing::Size(24, 24);
this->btnNext->TabIndex = 56;
this->btnNext->Text = S">";
this->btnNext->Click += new System::EventHandler(this, btnNext_Click);
//
// btnPrev
//
this->btnPrev->Font = new System::Drawing::Font(S"Microsoft Sans Serif", 8.25F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->btnPrev->Location = System::Drawing::Point(136, 160);
this->btnPrev->Name = S"btnPrev";
this->btnPrev->Size = System::Drawing::Size(24, 24);
this->btnPrev->TabIndex = 55;
this->btnPrev->Text = S"<";
this->btnPrev->Click += new System::EventHandler(this, btnPrev_Click);
//
// btnFirst
//
this->btnFirst->Font = new System::Drawing::Font(S"Microsoft Sans Serif", 8.25F, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->btnFirst->Location = System::Drawing::Point(112, 160);
this->btnFirst->Name = S"btnFirst";
this->btnFirst->Size = System::Drawing::Size(24, 24);
this->btnFirst->TabIndex = 54;
this->btnFirst->Text = S"|<";
this->btnFirst->Click += new System::EventHandler(this, btnFirst_Click);
//
// label11
//
this->label11->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label11->Location = System::Drawing::Point(304, 112);
this->label11->Name = S"label11";
this->label11->Size = System::Drawing::Size(40, 23);
this->label11->TabIndex = 53;
this->label11->Text = S"Class:";
this->label11->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// cboClass
//
this->cboClass->ItemHeight = 13;
this->cboClass->Location = System::Drawing::Point(344, 112);
this->cboClass->Name = S"cboClass";
this->cboClass->Size = System::Drawing::Size(120, 21);
this->cboClass->TabIndex = 52;
//
// label12
//
this->label12->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label12->Location = System::Drawing::Point(184, 112);
this->label12->Name = S"label12";
this->label12->Size = System::Drawing::Size(58, 23);
this->label12->TabIndex = 51;
this->label12->Text = S"Gender:";
this->label12->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// cboGender
//
this->cboGender->ItemHeight = 13;
this->cboGender->Location = System::Drawing::Point(240, 112);
this->cboGender->Name = S"cboGender";
this->cboGender->Size = System::Drawing::Size(64, 21);
this->cboGender->TabIndex = 50;
//
// txtZip
//
this->txtZip->Location = System::Drawing::Point(368, 64);
this->txtZip->Name = S"txtZip";
this->txtZip->Size = System::Drawing::Size(96, 20);
this->txtZip->TabIndex = 49;
this->txtZip->Text = S"";
//
// txtEmail
//
this->txtEmail->Location = System::Drawing::Point(248, 88);
this->txtEmail->Name = S"txtEmail";
this->txtEmail->Size = System::Drawing::Size(216, 20);
this->txtEmail->TabIndex = 47;
this->txtEmail->Text = S"";
//
// txtState
//
this->txtState->Location = System::Drawing::Point(288, 64);
this->txtState->Name = S"txtState";
this->txtState->Size = System::Drawing::Size(40, 20);
this->txtState->TabIndex = 45;
this->txtState->Text = S"";
//
// txtLName
//
this->txtLName->Location = System::Drawing::Point(312, 16);
this->txtLName->Name = S"txtLName";
this->txtLName->Size = System::Drawing::Size(152, 20);
this->txtLName->TabIndex = 43;
this->txtLName->Text = S"";
//
// txtBibNumber
//
this->txtBibNumber->Location = System::Drawing::Point(112, 136);
this->txtBibNumber->Name = S"txtBibNumber";
this->txtBibNumber->Size = System::Drawing::Size(48, 20);
this->txtBibNumber->TabIndex = 41;
this->txtBibNumber->Text = S"";
//
// txtBirthdate
//
this->txtBirthdate->Location = System::Drawing::Point(112, 112);
this->txtBirthdate->Name = S"txtBirthdate";
this->txtBirthdate->Size = System::Drawing::Size(80, 20);
this->txtBirthdate->TabIndex = 39;
this->txtBirthdate->Text = S"";
//
// txtPhone
//
this->txtPhone->Location = System::Drawing::Point(112, 88);
this->txtPhone->Name = S"txtPhone";
this->txtPhone->Size = System::Drawing::Size(80, 20);
this->txtPhone->TabIndex = 37;
this->txtPhone->Text = S"";
//
// txtCity
//
this->txtCity->Location = System::Drawing::Point(112, 64);
this->txtCity->Name = S"txtCity";
this->txtCity->Size = System::Drawing::Size(128, 20);
this->txtCity->TabIndex = 35;
this->txtCity->Text = S"";
//
// txtAddress
//
this->txtAddress->Location = System::Drawing::Point(112, 40);
this->txtAddress->Name = S"txtAddress";
this->txtAddress->Size = System::Drawing::Size(352, 20);
this->txtAddress->TabIndex = 33;
this->txtAddress->Text = S"";
//
// txtFName
//
this->txtFName->Location = System::Drawing::Point(112, 16);
this->txtFName->Name = S"txtFName";
this->txtFName->Size = System::Drawing::Size(112, 20);
this->txtFName->TabIndex = 31;
this->txtFName->Text = S"";
//
// label10
//
this->label10->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label10->Location = System::Drawing::Point(336, 64);
this->label10->Name = S"label10";
this->label10->Size = System::Drawing::Size(32, 23);
this->label10->TabIndex = 48;
this->label10->Text = S"Zip:";
this->label10->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label9
//
this->label9->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label9->Location = System::Drawing::Point(200, 88);
this->label9->Name = S"label9";
this->label9->Size = System::Drawing::Size(40, 23);
this->label9->TabIndex = 46;
this->label9->Text = S"Email:";
this->label9->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label8
//
this->label8->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label8->Location = System::Drawing::Point(240, 64);
this->label8->Name = S"label8";
this->label8->Size = System::Drawing::Size(48, 23);
this->label8->TabIndex = 44;
this->label8->Text = S"State:";
this->label8->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label7
//
this->label7->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label7->Location = System::Drawing::Point(232, 16);
this->label7->Name = S"label7";
this->label7->Size = System::Drawing::Size(80, 23);
this->label7->TabIndex = 42;
this->label7->Text = S"Last Name:";
this->label7->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label6
//
this->label6->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label6->Location = System::Drawing::Point(8, 136);
this->label6->Name = S"label6";
this->label6->TabIndex = 40;
this->label6->Text = S"Bib Number:";
this->label6->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label5
//
this->label5->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label5->Location = System::Drawing::Point(8, 112);
this->label5->Name = S"label5";
this->label5->TabIndex = 38;
this->label5->Text = S"Birthdate:";
this->label5->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label4
//
this->label4->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label4->Location = System::Drawing::Point(8, 88);
this->label4->Name = S"label4";
this->label4->TabIndex = 36;
this->label4->Text = S"Phone:";
this->label4->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label3
//
this->label3->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label3->Location = System::Drawing::Point(8, 64);
this->label3->Name = S"label3";
this->label3->TabIndex = 34;
this->label3->Text = S"City:";
this->label3->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label2
//
this->label2->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label2->Location = System::Drawing::Point(8, 40);
this->label2->Name = S"label2";
this->label2->TabIndex = 32;
this->label2->Text = S"Address:";
this->label2->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// label1
//
this->label1->Font = new System::Drawing::Font(S"Comic Sans MS", 9.75F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point, (System::Byte)0);
this->label1->Location = System::Drawing::Point(8, 16);
this->label1->Name = S"label1";
this->label1->TabIndex = 30;
this->label1->Text = S"First Name:";
this->label1->TextAlign = System::Drawing::ContentAlignment::TopRight;
//
// tabPage2
//
this->tabPage2->Location = System::Drawing::Point(4, 22);
this->tabPage2->Name = S"tabPage2";
this->tabPage2->Size = System::Drawing::Size(480, 201);
this->tabPage2->TabIndex = 0;
this->tabPage2->Text = S"Set Start Times";
this->tabPage2->Visible = false;
//
// tabPage3
//
this->tabPage3->Location = System::Drawing::Point(4, 22);
this->tabPage3->Name = S"tabPage3";
this->tabPage3->Size = System::Drawing::Size(480, 201);
this->tabPage3->TabIndex = 1;
this->tabPage3->Text = S"Enter Finish Times";
this->tabPage3->Visible = false;
//
// tabPage4
//
this->tabPage4->Location = System::Drawing::Point(4, 22);
this->tabPage4->Name = S"tabPage4";
this->tabPage4->Size = System::Drawing::Size(480, 201);
this->tabPage4->TabIndex = 2;
this->tabPage4->Text = S"See Results";
this->tabPage4->Visible = false;
//
// Form1
//
this->AutoScaleBaseSize = System::Drawing::Size(5, 13);
this->ClientSize = System::Drawing::Size(504, 238);
this->Controls->Add(this->tabControl1);
this->Name = S"Form1";
this->Text = S"Form1";
this->tabControl1->ResumeLayout(false);
this->tabPage1->ResumeLayout(false);
this->ResumeLayout(false);
}
private: System::Void btnNext_Click(System::Object * sender, System::EventArgs * e)
{
this->BindingContext->get_Item(dsEntries, S"Entry")->Position = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
int intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
int intCount = this->BindingContext->get_Item(dsEntries, S"Entry")->Count;
lblPosition->Text = String::Format(S"{0} of {1}", __box(intPosition), __box(intCount));
}
private: System::Void btnPrev_Click(System::Object * sender, System::EventArgs * e)
{
this->BindingContext->get_Item(dsEntries, S"Entry")->Position = this->BindingContext->get_Item(dsEntries, S"Entry")->Position - 1;
int intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
int intCount = this->BindingContext->get_Item(dsEntries, S"Entry")->Count;
lblPosition->Text = String::Format(S"{0} of {1}", __box(intPosition), __box(intCount));
}
private: System::Void btnFirst_Click(System::Object * sender, System::EventArgs * e)
{
this->BindingContext->get_Item(dsEntries, S"Entry")->Position = 0;
int intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
int intCount = this->BindingContext->get_Item(dsEntries, S"Entry")->Count;
lblPosition->Text = String::Format(S"{0} of {1}", __box(intPosition), __box(intCount));
}
private: System::Void btnLast_Click(System::Object * sender, System::EventArgs * e)
{
this->BindingContext->get_Item(dsEntries, S"Entry")->Position = this->BindingContext->get_Item(dsEntries, S"Entry")->Count - 1;
int intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
int intCount = this->BindingContext->get_Item(dsEntries, S"Entry")->Count;
lblPosition->Text = String::Format(S"{0} of {1}", __box(intPosition), __box(intCount));
}
private: System::Void btnSave_Click(System::Object * sender, System::EventArgs * e)
{
// If this is a new entry (Add button clicked), add a new row.
// Otherwise, save the current row.
int intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
if (booNewRow)
{
//booNewRow = false;
//DataRow* drNewRow = dsEntries->Tables->Item[S"Entry"]->NewRow();
////DataRow* drNewRow = dsEntries->Tables("Entry")->NewRow();
////DataRow dr;
//int intCurKey;
//int intNewKey = 0;
//int i = 0;
//// Save the current form values.
//String* strFName = txtFName->Text;
//String* strLName = txtLName->Text;
//String* strAddress = txtAddress->Text;
//String* strCity = txtCity->Text;
//String* strState = txtState->Text;
//String* strZip = txtZip->Text;
//String* strPhone = txtPhone->Text;
//String* strEmail = txtEmail->Text;
//String* strBirthdate = txtBirthdate->Text;
//String* strGender = cboGender->Text;
//String* strClass = cboClass->Text;
//String* strBibNum = txtBibNumber->Text;
//// Get new key.
//DataRow* dr;
//do
//{
// dr = dsEntries->Tables->Item[S"Entry"]->Rows->Item[i];
// intCurKey = dr[S"RaceKey"];
// //intCurKey = dsEntries->Tables->Item[S"Entry"]->Columns->Item["RaceKey"]->;
// if (intCurKey > intNewKey)
// {
// intNewKey = intCurKey;
// }
// i++
//}
//while ! dsEntries->Tables->Item[S"Entry"]->EOF
//intNewKey++;
////foreach (DataRow* dr in dsEntries->Tables->Item[S"Entry"]->Rows)
////{
//// intCurKey = int->Parse(dr["RaceKey"]->ToString());
//// if (intCurKey > intNewKey)
//// intNewKey = intCurKey;
////}
////intNewKey++;
//
//// Populate and add the new data row.
//drNewRow["FirstName"] = strFName;
//drNewRow["LastName"] = strLName;
//drNewRow["RaceKey"] = intNewKey;
//drNewRow["Address"] = strAddress;
//drNewRow["City"] = strCity;
//drNewRow["State"] = strState;
//drNewRow["Zip"] = strZip;
//drNewRow["Phone"] = strPhone;
//drNewRow["Email"] = strEmail;
//if (txtBirthdate.Text == "")
// drNewRow["Birthdate"] = DBNull.Value;
//else
// drNewRow["Birthdate"] = DateTime.Parse(strBirthdate);
//drNewRow["Gender"] = strGender;
//drNewRow["Class"] = strClass;
//if (txtBibNumber.Text == "")
// drNewRow["BibNum"] = DBNull.Value;
//else
// drNewRow["BibNum"] = int.Parse(strBibNum);
//dsEntries.Tables["Entry"].Rows.Add(drNewRow);
//// Update the .xml file.
//try
//{
// XmlDocument xmldoc = new XmlDocument();
// xmldoc->Load(Directory->GetCurrentDirectory() + "\\Entry.xml");
// XmlElement xmlEl = xmldoc->CreateElement("Entry");
// xmldoc->DocumentElement->AppendChild(xmlEl);
// XmlElement xmlChildEl;
// xmlChildEl = xmldoc->CreateElement("RaceKey");
// XmlText xmlText = xmldoc->CreateTextNode(intNewKey.ToString());
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("FirstName");
// xmlText = xmldoc->CreateTextNode(strFName);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("LastName");
// xmlText = xmldoc->CreateTextNode(strLName);
// xmlChildEl->AppendChild(xmlText);;
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("Address");
// xmlText = xmldoc->CreateTextNode(strAddress);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("City");
// xmlText = xmldoc->CreateTextNode(strCity);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("State");
// xmlText = xmldoc->CreateTextNode(strState);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("Zip");
// xmlText = xmldoc->CreateTextNode(strZip);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("Phone");
// xmlText = xmldoc->CreateTextNode(strPhone);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("Email");
// xmlText = xmldoc->CreateTextNode(strEmail);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("Birthdate");
// xmlText = xmldoc->CreateTextNode(strBirthdate);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("Gender");
// xmlText = xmldoc->CreateTextNode(strGender);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("Class");
// xmlText = xmldoc->CreateTextNode(strClass);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmlChildEl = xmldoc->CreateElement("BibNum");
// xmlText = xmldoc->CreateTextNode(strBibNum);
// xmlChildEl->AppendChild(xmlText);
// xmlEl->AppendChild(xmlChildEl);
// xmldoc->Save(Directory->GetCurrentDirectory() + "\\Entry.xml");
//}
//catch (Exception ex)
//{
// MessageBox->Show(ex->Message);
//}
//// Refresh the data set.
//dsEntries->Clear();
//dsEntries->ReadXml(Directory->GetCurrentDirectory() + "\\Entry.xml");
////// Go to the new record.
////bmb.Position = bmb.Count - 1;
////lblPosition.Text = String.Format("{0} of {1}", bmb.Position + 1, bmb.Count);
}
else
{
// Save combo box values.
String* strGender = cboGender->Text;
String* strClass = cboClass->Text;
//// Force a refresh.
//bmb.Position = intPosition;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["FirstName"] = txtFName->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["LastName"] = txtLName->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["Address"] = txtAddress->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["City"] = txtCity->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["State"] = txtState->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["Zip"] = txtZip->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["Phone"] = txtPhone->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["Email"] = txtEmail->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["Birthdate"] = txtBirthdate->Text;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["Gender"] = strGender;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["Class"] = strClass;
dsEntries->Tables->Item[S"Entry"]->Rows->Item[intPosition]->Item["BibNum"] = txtBibNumber->Text;
// Update the .xml file.
try
{
dsEntries->WriteXml(String::Concat(Directory::GetCurrentDirectory(), "\\Entry.xml"));
}
catch (System::Exception* ex)
{
Console::WriteLine(ex);
//System::Windows::Forms::MessageBox->Show(pex->Message);
}
}
}
private: System::Void btnAdd_Click(System::Object * sender, System::EventArgs * e)
{
booNewRow = true;
txtFName->Text = "";
txtLName->Text = "";
txtAddress->Text = "";
txtCity->Text = "";
txtState->Text = "";
txtZip->Text = "";
txtPhone->Text = "";
txtEmail->Text = "";
txtBirthdate->Text = "";
cboGender->Text = "";
cboClass->Text = "";
txtBibNumber->Text = "";
txtID->Text = "";
}
private: System::Void button1_Click(System::Object * sender, System::EventArgs * e)
{
int intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position + 1;
dsEntries->Tables->Item["Entry"]->Rows->Item[intPosition]->Delete();
dsEntries->AcceptChanges();
// Update the .xml file.
try
{
dsEntries->WriteXml(String::Concat(Directory::GetCurrentDirectory(), "\\Entry.xml"));
}
catch (System::Exception* ex)
{
Console::WriteLine(ex);
}
intPosition = this->BindingContext->get_Item(dsEntries, S"Entry")->Position - 1;
int intCount = this->BindingContext->get_Item(dsEntries, S"Entry")->Count;
lblPosition->Text = String::Format(S"{0} of {1}", __box(intPosition), __box(intCount));
}
};
}