49738 (База даних "Телефонний довідник"), страница 5
Описание файла
Документ из архива "База даних "Телефонний довідник"", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "49738"
Текст 5 страницы из документа "49738"
}
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;
}
listView1.Items.Clear();
var query = from q in Variables.xDocument.Descendants("Item")
where q.Attribute("UserID").Value == Variables.CurrentUserID &&
(q.Attribute("Name").Value.ToLower().Contains(textBoxSearch.Text.Trim().ToLower())
q.Attribute("Phone").Value.ToLower().Contains(textBoxSearch.Text.Trim().ToLower())
q.Attribute("Mobile").Value.ToLower().Contains(textBoxSearch.Text.Trim().ToLower())
q.Attribute("Email").Value.ToLower().Contains(textBoxSearch.Text.Trim().ToLower())
q.Attribute("Address").Value.ToLower().Contains(textBoxSearch.Text.Trim().ToLower()))
select q;
if (query.Count() < 1) return;
foreach (var item in query)
{
ListViewItem 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});
listViewItems.Name = "Item" + item.Attribute("ID").Value;
listView1.Items.Add(listViewItems);
}
}
catch (Exception ex)
{
StackFrame file_info = new StackFrame(true);
Messages.error(ref file_info, ex.Message, this);
}
}
void listView1_MouseDoubleClick(object sender, MouseEventArgs e)
{
//var item = listView1.GetItemAt(e.X, e.Y);
buttonEdit_Click(null, null);
}
#endregion
}
}
Форма введення запису про абонентів:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using Phonebook.Classes;
using System.Xml.Linq;
using System.IO;
using System.Drawing.Imaging;
namespace Phonebook
{
public partial class ItemForm: Form
{
public string ItemID = "";
bool NewItem = false;
bool EditItem = false;
public ItemForm(bool newItem, bool editItem)
{
InitializeComponent();
this.tableLayoutPanel1.CellPaint += new TableLayoutCellPaintEventHandler(tableLayoutPanel1_CellPaint);
//////////////////////
this.NewItem = newItem;
this.EditItem = editItem;
if (NewItem)
this.Text = "Додати новий запис";
else if (EditItem)
this.Text = "Редагувати запис";
}
void tableLayoutPanel1_CellPaint(object sender, TableLayoutCellPaintEventArgs e)
{
try
{
if (e.Row % 2 == 0)
{
Graphics g = e.Graphics;
Rectangle r = e.CellBounds;
g.FillRectangle(new SolidBrush(Color.FromArgb(225, 225, 225)), r);
}
}
catch (Exception ex)
{
StackFrame file_info = new StackFrame(true);
Messages.error(ref file_info, ex.Message, this);
}
}
private void buttonSubmit_Click(object sender, EventArgs e)
{
try
{
errorProvider1.Clear();
#region add new item
if (NewItem)
{
if (textBoxName.Text.Trim() == "")
{
errorProvider1.SetError(textBoxName, "Будь-ласка, введіть ім'я");
return;
}
int maxID = 0;
try
{
maxID = (from q in Variables.xDocument.Descendants("Item")
where q.Attribute("UserID").Value == Variables.CurrentUserID
select (int)q.Attribute("ID")).Max();
}
catch { }
maxID++;
XElement newItem = new XElement("Item", new XAttribute("ID", maxID),
new XAttribute("UserID", Variables.CurrentUserID),
new XAttribute("Name", textBoxName.Text.Trim()),
new XAttribute("Mobile", textBoxMobile.Text.Trim()),
new XAttribute("Phone", textBoxPhone.Text.Trim()),
new XAttribute("Email", textBoxEMail.Text.Trim()),
new XAttribute("Address", textBoxAddress.Text.Trim()),
new XAttribute("RegDate", DateTime.Now.ToString()));
var ItemsElement = (from q in Variables.xDocument.Descendants("Items")
select q).First();
ItemsElement.Add(newItem);
}
#endregion
#region edit item
else if (EditItem)
{
if (textBoxName.Text.Trim() == "")
{
errorProvider1.SetError(textBoxName, "Будь-ласка, введіть ім'я");
return;
}
var theItem = (from q in Variables.xDocument.Descendants("Item")
where q.Attribute("ID").Value == this.ItemID
select q).First();
theItem.Attribute("Name").Value = textBoxName.Text.Trim();
theItem.Attribute("Mobile").Value = textBoxMobile.Text.Trim();
theItem.Attribute("Phone").Value = textBoxPhone.Text.Trim();
theItem.Attribute("Email").Value = textBoxEMail.Text.Trim();
theItem.Attribute("Address").Value = textBoxAddress.Text.Trim();
}
#endregion
TripleDES.EncryptToFile(Variables.xDocument.ToString(SaveOptions.DisableFormatting), Variables.DBFile, TripleDES.ByteKey, TripleDES.IV);
//Variables.xDocument.Save("debug.xml");
this.Close();
}
catch (Exception ex)
{
StackFrame file_info = new StackFrame(true);
Messages.error(ref file_info, ex.Message, this);
}
}
#region
Image ResizeImage(Image FullsizeImage, int NewWidth, int MaxHeight, bool OnlyResizeIfWider)
{
// Prevent using images internal thumbnail
FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
FullsizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
if (OnlyResizeIfWider)
{
if (FullsizeImage.Width <= NewWidth)
{
NewWidth = FullsizeImage.Width;
}
}
int NewHeight = FullsizeImage.Height * NewWidth / FullsizeImage.Width;
if (NewHeight > MaxHeight)
{
// Resize with height instead
NewWidth = FullsizeImage.Width * MaxHeight / FullsizeImage.Height;
NewHeight = MaxHeight;
}
System.Drawing.Image NewImage = FullsizeImage.GetThumbnailImage(NewWidth, NewHeight, null, IntPtr.Zero);
// Clear handle to original file so that we can overwrite it if necessary
FullsizeImage.Dispose();
// Save resized picture