Курсовая работа: База даних "Телефонний довідник"
this.Text =
Variables.Caption + Variables.CurrentUserName + ": " +
contactsNumbers.ToString() + " Contacts";
DisableEnableControls(true);
}
else
DisableEnableControls(false);
}
catch (Exception ex)
{
DisableEnableControls(false);
StackFrame file_info =
new StackFrame(true);
Messages.error(ref
file_info, ex.Message, this);
}
}
void
changeInfoToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
UserForm changeInfoForm =
new UserForm(false, false, true);
changeInfoForm.Font = new
Font(this.Font.Name, this.FontSize, this.Font.Style, this.Font.Unit,
this.Font.GdiCharSet, this.Font.GdiVerticalFont);
var userElement = from q
in Variables.xDocument.Descendants("User")
where
q.Attribute("ID").Value == Variables.CurrentUserID
select q;
string username =
userElement.First().Attribute("UserName").Value;
string email =
userElement.First().Attribute("Email").Value;
changeInfoForm.textBoxUsername.Text
= username;
changeInfoForm.textBoxEmail.Text
= email;
changeInfoForm.ShowDialog();
if
(Variables.CurrentUserName!= "" && Variables.CurrentUserID!=
"")
{
int contactsNumbers =
Variables.xDocument.Descendants("Item").Where(q =>
q.Attribute("UserID").Value == Variables.CurrentUserID).Count();
this.Text =
Variables.Caption + Variables.CurrentUserName + ": " +
contactsNumbers.ToString() + " Contacts";
DisableEnableControls(true);
}
else
DisableEnableControls(false);
}
catch (Exception ex)
{
DisableEnableControls(false);
StackFrame file_info =
new StackFrame(true);
Messages.error(ref
file_info, ex.Message, this);
}
}
void
aboutProgrammerToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("http://vkontakte.ru/id2688556");
}
#endregion
void LoadPhoneBookItems()
{
try
{
listView1.Items.Clear();
var items = from q in
Variables.xDocument.Descendants("Item")
where
q.Attribute("UserID").Value == Variables.CurrentUserID
select q;
if (items.Count() < 1)
return;
foreach (var item in
items)
{
ListViewItem
listViewItems;
if
(christianToolStripMenuItem.Checked)
listViewItems = new
ListViewItem(new string[]
{
item.Attribute("Name").Value,
item.Attribute("Phone").Value,
item.Attribute("Mobile").Value,
item.Attribute("Email").Value,
item.Attribute("Address").Value,
item.Attribute("RegDate").Value});
else
listViewItems = new
ListViewItem(new string[]
{
item.Attribute("Name").Value,
item.Attribute("Phone").Value,
item.Attribute("Mobile").Value,
item.Attribute("Email").Value,
item.Attribute("Address").Value,
ConvertToPersianDate(item.Attribute("RegDate").Value)});
listViewItems.Name =
"Item" + item.Attribute("ID").Value;
listView1.Items.Add(listViewItems);
}
}
catch (Exception ex)
{
DisableEnableControls(false);
StackFrame file_info =
new StackFrame(true);
Messages.error(ref
file_info, ex.Message, this);
}
}
void ApplySettings()
{
try
{
if (Variables.xDocument
== null)
{
DisableEnableControls(false);
return;
}
var Settings = (from q in
Variables.xDocument.Descendants("Setting")
where
q.Attribute("UserID").Value == Variables.CurrentUserID
select q).First();
if
(Settings.Attribute("RightToLeft").Value == "Yes")
rightToLeftToolStripMenuItem_Click(null,
null);
else
leftToRightToolStripMenuItem_Click(null,
null);
if (Settings.Attribute("Dates").Value
== "Persian")
{
persianToolStripMenuItem.Checked
= true;
christianToolStripMenuItem.Checked
= false;
}
else
{
persianToolStripMenuItem.Checked
= false;
christianToolStripMenuItem.Checked
= true;
}
this.FontSize =
float.Parse(Settings.Attribute("FontSize").Value);
this.Font = new
Font(this.Font.Name, this.FontSize, this.Font.Style, this.Font.Unit,
this.Font.GdiCharSet, this.Font.GdiVerticalFont);
if (this.FontSize == 8)
{
toolStripMenuItemFontSize8.Checked
= true;
toolStripMenuItemFontSize10.Checked
= false;
toolStripMenuItemFontSize12.Checked
= false;
toolStripMenuItemFontSize14.Checked
= false;
toolStripMenuItemFontSize16.Checked
= false;
toolStripMenuItemFontSize18.Checked
= false;
}
else if (this.FontSize ==
10)
{
toolStripMenuItemFontSize8.Checked
= false;
toolStripMenuItemFontSize10.Checked
= true;
toolStripMenuItemFontSize12.Checked
= false;
toolStripMenuItemFontSize14.Checked
= false;
toolStripMenuItemFontSize16.Checked
= false;
toolStripMenuItemFontSize18.Checked
= false;
}
else if (this.FontSize ==
12)
{
toolStripMenuItemFontSize8.Checked
= false;
toolStripMenuItemFontSize10.Checked
= false;
toolStripMenuItemFontSize12.Checked
= true;
toolStripMenuItemFontSize14.Checked
= false;
toolStripMenuItemFontSize16.Checked
= false;
toolStripMenuItemFontSize18.Checked
= false;
}
else if (this.FontSize ==
14)
{
toolStripMenuItemFontSize8.Checked
= false;
toolStripMenuItemFontSize10.Checked
= false;
toolStripMenuItemFontSize12.Checked
= false;
toolStripMenuItemFontSize14.Checked
= true;
toolStripMenuItemFontSize16.Checked
= false;
toolStripMenuItemFontSize18.Checked
= false;
}
else if (this.FontSize ==
16)
{
toolStripMenuItemFontSize8.Checked
= false;
toolStripMenuItemFontSize10.Checked
= false;
toolStripMenuItemFontSize12.Checked
= false;
toolStripMenuItemFontSize14.Checked
= false;
toolStripMenuItemFontSize16.Checked
= true;
toolStripMenuItemFontSize18.Checked
= false;
}
else if (this.FontSize ==
18)
{
toolStripMenuItemFontSize8.Checked
= false;
toolStripMenuItemFontSize10.Checked
= false;
toolStripMenuItemFontSize12.Checked
= false;
toolStripMenuItemFontSize14.Checked
= false;
toolStripMenuItemFontSize16.Checked
= false;
toolStripMenuItemFontSize18.Checked
= true;
}
}
catch (Exception ex)
{
DisableEnableControls(false);
StackFrame file_info =
new StackFrame(true);
Messages.error(ref
file_info, ex.Message, this);
}
}
void
MainForm_Shown(object sender, EventArgs e)
{
try
{
if
(!File.Exists(Variables.DBFile))
{
newUserToolStripMenuItem_Click(null,
null);
return;
}
Variables.xDocument =
XDocument.Parse(TripleDES.DecryptFromFile(Variables.DBFile, TripleDES.ByteKey,
TripleDES.IV));
var users = from q in
Variables.xDocument.Descendants("User")
select q;
if (users.Count() <
1)//No user exist
{
newUserToolStripMenuItem_Click(null,
null);
return;
}
else//More than one user
exist
{
changeUserToolStripMenuItem_Click(null,
null);
}
}
catch (Exception ex)
{
DisableEnableControls(false);
StackFrame file_info =
new StackFrame(true);
Messages.error(ref
file_info, ex.Message, this);
try
{
File.Delete(Variables.DBFile);
}
catch
{
MessageBox.Show("Будь-ласка,
видаліть файл бази даних", "Критична помилка",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
void
DisableEnableControls(bool enable)
{
if (enable)
{
changeInfoToolStripMenuItem.Enabled
= settingsToolStripMenuItem.Enabled = true;
textBoxSearch.Enabled =
listView1.Enabled = true;
buttonNew.Enabled = true;
}
else
{
changeInfoToolStripMenuItem.Enabled
= settingsToolStripMenuItem.Enabled = false;
textBoxSearch.Enabled =
listView1.Enabled = false;
buttonNew.Enabled =
false;
}
}
string
ConvertToPersianDate(string stringDate)
{
try
{
DateTime dateTime =
DateTime.Parse(stringDate);
PersianCalendar
persianCalendar = new PersianCalendar();
var str =
persianCalendar.GetYear(dateTime).ToString() + " / " +
persianCalendar.GetMonth(dateTime).ToString()
+ " / " +
persianCalendar.GetDayOfMonth(dateTime).ToString()
+ " " +
persianCalendar.GetHour(dateTime).ToString()
+ ":" +
persianCalendar.GetMinute(dateTime).ToString()
+ ":" +
persianCalendar.GetSecond(dateTime).ToString();
return str;
}
catch (Exception ex)
{
StackFrame file_info =
new StackFrame(true);
Messages.error(ref
file_info, ex.Message, this);
return "";
}
}
#region listview
void
textBoxSearch_TextChanged(object sender, EventArgs e)
{
try
{
if
(textBoxSearch.Text.Trim() == "")
{
LoadPhoneBookItems();
return;
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9 |