📄 memberform.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace BellRingers
{
public partial class MemberForm : Form
{
public MemberForm()
{
InitializeComponent();
this.Reset();
ToolStripMenuItem[] formMenuItemList = new ToolStripMenuItem[2];
formMenuItemList[0] = new ToolStripMenuItem("Save Member", null, new System.EventHandler(saveMemberClick));
formMenuItemList[1] = new ToolStripMenuItem("Clear", null, new System.EventHandler(clearClick));
ContextMenuStrip formMenu = new ContextMenuStrip();
formMenu.Items.AddRange(formMenuItemList);
this.ContextMenuStrip = formMenu;
this.ContextMenuStrip.Enabled = false;
}
public void Reset()
{
firstName.Text = "";
lastName.Text = "";
towerNames.Items.Clear();
towerNames.Items.Add("Great Shevington");
towerNames.Items.Add("Little Mudford");
towerNames.Items.Add("Upper Gumtree");
towerNames.Items.Add("Downley Hatch");
memberSince.Value = DateTime.Today;
isCaptain.Checked = false;
novice.Checked = true;
methods.Items.Clear();
methods.Items.Add("Canterbury Minimus");
methods.Items.Add("Reverse St Nicholas");
methods.Items.Add("Plain Bob Doubles");
methods.Items.Add("Grandsire Doubles");
methods.Items.Add("Cambridge Minor");
methods.Items.Add("Old Oxford Delight Minor");
methods.Items.Add("Kent Treble Bob Major");
}
private void clearClick(object sender, EventArgs e)
{
this.Reset();
}
private void addClick(object sender, EventArgs e)
{
string details;
details = "Member name " + firstName.Text + " " + lastName.Text + " from the tower at " + towerNames.Text;
MessageBox.Show(details, "Member Information");
}
private void memberFormClosing(object sender, FormClosingEventArgs e)
{
DialogResult key = MessageBox.Show("Are you sure you want to quit", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
e.Cancel = (key == DialogResult.No);
}
private void newClick(object sender, EventArgs e)
{
this.Reset();
printToolStripMenuItem.Enabled = true;
saveMemberToolStripMenuItem.Enabled = true;
firstName.Enabled = true;
lastName.Enabled = true;
towerNames.Enabled = true;
isCaptain.Enabled = true;
memberSince.Enabled = true;
yearsExperience.Enabled = true;
methods.Enabled = true;
add.Enabled = true;
clear.Enabled = true;
this.ContextMenuStrip.Enabled = true;
}
private void exitClick(object sender, EventArgs e)
{
this.Close();
}
private void textBoxClearClick(object sender, EventArgs e)
{
if (this.Tag.Equals(firstName))
{
firstName.Clear();
firstName.Focus();
}
else
{
lastName.Clear();
lastName.Focus();
}
}
private void textBoxContextMenuPopup(object sender, CancelEventArgs e)
{
this.Tag = ((ContextMenuStrip)sender).SourceControl;
}
private void saveMemberClick(object sender, EventArgs e)
{
DialogResult buttonClicked = saveFileDialog.ShowDialog();
if (buttonClicked.Equals(DialogResult.OK))
{
StreamWriter writer = new StreamWriter(saveFileDialog.FileName);
writer.WriteLine("First Name: " + firstName.Text);
writer.WriteLine("Last Name: " + lastName.Text);
writer.WriteLine("Tower: " + towerNames.Text);
writer.WriteLine("Captain: " + isCaptain.Checked);
writer.WriteLine("Member Since: " + memberSince.Text);
writer.WriteLine("Methods: ");
foreach (object methodChecked in methods.CheckedItems)
{
writer.WriteLine(methodChecked.ToString());
}
writer.Close();
MessageBox.Show("Member details saved", "Saved");
}
}
private void printClick(object sender, EventArgs e)
{
DialogResult buttonClicked = printDialog.ShowDialog();
if (buttonClicked.Equals(DialogResult.OK))
{
printDocument.Print();
}
}
private void printPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
StringBuilder data = new StringBuilder();
StringWriter writer = new StringWriter(data);
writer.WriteLine("First Name: " + firstName.Text);
writer.WriteLine("Last Name: " + lastName.Text);
writer.WriteLine("Tower: " + towerNames.Text);
writer.WriteLine("Captain: " + isCaptain.Checked);
writer.WriteLine("Member Since: " + memberSince.Text);
writer.WriteLine("Methods: ");
foreach (object methodChecked in methods.CheckedItems)
{
writer.WriteLine(methodChecked.ToString());
}
writer.Close();
float leftMargin = e.MarginBounds.Left;
float topMargin = e.MarginBounds.Top;
float yPos = 0;
Font printFont = null;
printFont = new Font("Arial", 12);
yPos = topMargin + printFont.GetHeight(e.Graphics);
e.HasMorePages = false;
e.Graphics.DrawString(data.ToString(), printFont, Brushes.Black, leftMargin, yPos, new StringFormat());
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -