File.Move(clipboardFileName, dest);
break;
case ClipboardAction.Copy:
File.Copy(clipboardFileName, dest, false);
break;
}
clipboardAction = ClipboardAction.None;
clipboardFileName = string.Empty;
fillList();
}
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π²ΡΡΠ°Π²ΠΈΡΡ ΡΠ°ΠΉΠ» Π² Π΄ΡΡΠ³ΡΡ ΠΏΠ°ΠΏΠΊΡ, Π½ΡΠΆΠ½ΠΎ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΠΈΡΡΡΡ, ΡΡΠΎ Π² Π½Π΅ΠΉ Π½Π΅Ρ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠΡΠ»ΠΈ ΠΆΠ΅ ΡΠ°ΠΊΠΎΠΉ ΡΠ°ΠΉΠ» ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΡΠΎ Π½Π°Π΄ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΡΠ·Π½Π°ΡΡ, ΡΡΠΎ ΠΎΠ½ Ρ ΠΎΡΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ. ΠΠΎΠ΄ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΡΡΠ°Π²ΠΈΡΡ ΡΡΠ»ΡΠΊ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.15.
ΠΠΈΡΡΠΈΠ½Π³ 7.15private void pasteShortcutMenuItem_Click(object sender, System.EventArgs e) {
int i = 2;
string s = string.Empty;
string dest;
while(true) {
dest = path + "Shortcut" + s + " to " +
Path.GetFileName(Path.GetFileNameWithoutExtension(clipboardFileName) +
".lnk");
if (!File.Exists(dest)) break;
s = " (" + i.ToString() + ")";
i++;
}
StreamWriter sw = new StreamWriter(dest);
s = clipboardFileName;
if(s.IndexOf(" ") > 0)
s = "\"" + s + "\"";
s = s. Length.ToString() + "#" + s;
sw.WriteLine(s);
sw.Close();
fillList();
}
Π ΡΡΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΡΡΠ»ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΉΠ»Π° Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ. Π ΠΈΠΌΠ΅Π½ΠΈ ΡΡΠ»ΡΠΊΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ .LNK.
ΠΠΎΠ΄ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.16.
ΠΠΈΡΡΠΈΠ½Π³ 7.16private void renameMenuItem_Click(object sender, System.EventArgs e) {
Cursor.Current = Cursors.WaitCursor;
istViewItem lvi = listView.Items[listView.SelectedIndices[0]];
bool isFolder = lvi.ImageIndex = 0;
string s;
if (isFolder)
s = "ΠΏΠ°ΠΏΠΊΡ";
else s = "ΡΠ°ΠΉΠ»";
NameForm nameForm =
new NameForm(this, "ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ " + s, lvi.Text,
new SetNameDelegate(SetRename));
if (nameForm.ShowDialog() = DialogResult.OK) fillList();
listView.Focus();
}
Π‘Π½Π°ΡΠ°Π»Π° ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ΄Π΅Π»ΠΈΠ» ΠΏΠ°ΠΏΠΊΡ, ΡΠΎ Π΄Π»Ρ ΡΠΎΡΠΌΡ nameForm Π·Π°Π΄Π°Π΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΠΏΠ°ΠΏΠΊΡ. Π’Π°ΠΊΠΆΠ΅ ΠΈΠ· ΡΡΠΎΠΉ ΡΠΎΡΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΎΡΠΌΡ Π½ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ ΠΏΠ°ΠΏΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° Set Rename, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.17.
ΠΠΈΡΡΠΈΠ½Π³ 7.17/// <summary>
/// ΠΠ΅ΡΠΎΠ΄ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΏΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Π°
/// </summary>
/// <param name="name">ΠΠΌΡ ΠΏΠ°ΠΏΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Π°</param>
public void SetRename(string name) {
ListViewItem lvi = listView.Items[listView.SelectedIndices[0]];
bool isFolder = lvi.ImageIndex == 0;
string itemName = path + lvi.Text;
string destName =
Path.GetDirectoryName(itemName) +
Path.DirectorySeparatorChar.ToString() + name;
if (isFolder)
Directory.Move(itemName, destName);
else
File.Move(itemName, destName);
}
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅, ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ. ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π£Π΄Π°Π»ΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠ΄, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.18.
ΠΠΈΡΡΠΈΠ½Π³ 7.18private void deleteMenuItem_Click(object sender,
System.EventArgs e) {
ListViewItem lvi = listView.Items[listView.SelectedIndices[0]];
bool isFolder = lvi.ImageIndex == 0;
string s = "Are you sure you want to delete " + lvi.Text;
if (isFolder)
s += " and all its content";
s += "?";
if (MessageBox.Show(s, this.Text, MessageBoxButtons.YesNo,
MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) ==
DialogResult.Yes) {
if (isFolder)
Directory.Delete(path + lvi.Text, true);
else
File.Delete(path + lvi.Text);
fillList();
}
ΠΠ΅ΡΠ΅Π΄ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΏΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Π° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.19.
ΠΠΈΡΡΠΈΠ½Π³ 7.19private void newFolderMenuItem_Click(object sender, System.EventArgs e) {
Cursor.Current = Cursors.WaitCursor;
ListViewItem lvi = listView.Items[listView.SelectedIndices[0]];
NameForm nameForm = new NameForm(this, "ΠΠΎΠ²Π°Ρ ΠΏΠ°ΠΏΠΊΠ°", "",
new SetNameDelegate(SetNewName));
if (nameForm.ShowDialog() == DialogResult.OK) fillList();
listView.Focus();
}
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΡΠΎΡΠΌΠ° NameForm Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ ΠΠΎΠ²Π°Ρ ΠΏΠ°ΠΏΠΊΠ°. ΠΡΠ° ΡΠΎΡΠΌΠ° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² Π³Π»Π°Π²Π½ΡΡ ΡΠΎΡΠΌΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° SetNewName, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.20.
ΠΠΈΡΡΠΈΠ½Π³ 7.20/// <summary>
/// Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π½ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ Π΄Π»Ρ ΠΏΠ°ΠΏΠΊΠΈ
/// </summary>
/// <param name="name">ΠΠΌΡ Π΄Π»Ρ ΠΏΠ°ΠΏΠΊΠΈ</name>
public void SetNewName(string name) {
Directory.CreateDirectory(path + name);
}
ΠΠ΅ΡΠΎΠ΄ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΠ°ΠΏΠΊΡ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ, ΠΊΠΎΠ΄ Π΅Π³ΠΎ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ ΠΏΡΠΎΡΡ.
ΠΠΎΠ΄ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π‘Π²ΠΎΠΉΡΡΠ²Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.21.
ΠΠΈΡΡΠΈΠ½Π³ 7.21private void propertiesMenuItem_Click(object sender, System.EventArgs e) {
Cursor.Current = Cursors.WaitCursor;
ListViewItem lvi = listView.Items[listView.SelectedIndices[0]];
FileInfo fi = new FileInfo(path + lvi.Text);
PropertiesForm propertiesForm =
new PropertiesForm(this, fi, new SetNameDelegate(SetRename),
new SetAttributesDelegate(SetAttributes));
if (propertiesForm.ShowDialog() == DialogResult.OK) fillList();
listView.Focus();
}
ΠΡΠΎΡ ΠΊΠΎΠ΄ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΠΎΡΠΌΡ PropertiesForm, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π°ΡΡΠΈΠ±ΡΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ. Π’Π°ΠΊΠΆΠ΅ Π² ΡΡΠΎΠΉ ΡΠΎΡΠΌΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π°ΡΡΠΈΠ±ΡΡΡ ΡΠ°ΠΉΠ»Π° ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° SetAttributes, ΠΊΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.22.
ΠΠΈΡΡΠΈΠ½Π³ 7.22public void SetAttributes(FileAttributes fileAttributes) {
ListViewItem lvi = listView.Items[listView.SelectedIndices[0]];
bool isFolder = lvi.ImageIndex = 0;
if (isFolder) {
DirectoryInfo di = new DirectoryInfo(path + lvi.Text);
di.Attributes = fileAttributes;
} else {
FileInfo fi = new FileInfo(path + lvi.Text);
fi.Attributes = fileAttributes;
}
}
ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π³ΡΠ°Π΄ΠΈΠ΅Π½ΡΠ½ΠΎΠΉ Π·Π°Π»ΠΈΠ²ΠΊΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 7.23.
ΠΠΈΡΡΠΈΠ½Π³ 7.23public static void SetGradient(System.Windows.Forms.ListView listView) {
// ΠΠΎΠ²ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ
// ΠΠ»Ρ .NET Compact Framework 2.0
SendMessage(listView.Handle, LVM_SETEXTENDEDLISTVIEWSTYLE,
LVS_EX_GRADIENT);
listView.Refresh();
}
ΠΡΠ°ΠΊ, ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΉ Windows API Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠΌ ΡΠΏΠΈΡΠΊΠΎΠΌ ListView. ΠΡΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈΡΡ Π² Π³Π»Π°Π²Π΅ 4, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ ΡΡΠΎΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡ ΠΈΡ ΡΠ°Π·Π±ΠΎΡ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΡΡΡΠ°ΡΡ Π΄ΠΎ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΠ°Π΄Π΅ΡΡΡ, Ρ Π²Π°Ρ ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ. ΠΡΠ΄Ρ ΡΠ°Π΄, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΡΠΈΡΠ»Π΅ΡΠ΅ ΡΠ²ΠΎΠΈ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅, Π½Π° Π²Π°Ρ Π²Π·Π³Π»ΡΠ΄, ΡΠΊΡΠ°ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ
ΠΠΎ ΠΌΡ Ρ Π²Π°ΠΌΠΈ Π½Π΅ ΡΠ°ΡΡΡΠ°Π΅ΠΌΡΡ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ ΠΡΠΈΡΡΠΈΠ°Π½ΠΎΠΌ Π€ΠΎΡΡΠ±Π΅ΡΠ³ΠΎΠΌ. ΠΠ° Π΅Π³ΠΎ ΡΠ°ΠΉΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π΅ΡΠ΅ ΠΎΠ΄Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ, ΡΠ°ΠΊ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΎ ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ (Task Manager). ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΡΠΎΠΆΠ΅ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΏΠΎΡΡΠ°Π²ΠΊΠ΅ Windows Mobile. Π Π²Π΅Π΄Ρ ΡΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Π° Π² ΡΠ°Π±ΠΎΡΠ΅. ΠΠ»Π°Π΄Π΅Π»Π΅Ρ ΡΠΌΠ°ΡΡΡΠΎΠ½Π° ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ Windows Mobile ΠΌΠΎΠΆΠ΅Ρ ΡΠ·Π½Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΡ. ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ ΡΠΌΠ°ΡΡΡΠΎΠ½Π°, ΠΎΡΠ±ΠΈΡΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ. ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΄Π°Π»ΡΡΡ ΠΈΠ· ΠΏΠ°ΠΌΡΡΠΈ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΡ. ΠΠ΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ ΡΠ°ΠΌΠΈ ΡΠ½Π°Π±ΠΆΠ°ΡΡ ΡΠ²ΠΎΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ ΠΏΠΎΠ²Π΅Π·Π»ΠΎ ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΌΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ.
ΠΠ°ΠΊ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π±ΡΠ»Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° Visual Studio 2003 Π΄Π»Ρ ΡΠΌΠ°ΡΡΡΠΎΠ½ΠΎΠ² ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Windows Mobile 2003 Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ .NET Compact Framework 1.0. Π‘Π»Π΅Π΄ΡΡ Π½Π°ΡΠ΅ΠΉ ΡΡΠ°Π΄ΠΈΡΠΈΠΈ, Ρ Ρ ΡΠΎΠ³Π»Π°ΡΠΈΡ Π°Π²ΡΠΎΡΠ° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π» ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»Ρ Visual Studio 2005 Π΄Π»Ρ ΡΠ΅Π»Π΅Π²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Windows Mobile 5.0 ΠΈ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ .NET Compact Framework 2.0.
ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ (ΡΠΈΡ. 7.5).
Π ΠΈΡ. 7.5. ΠΠ½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅Π½Ρ, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π² Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π°, ΠΌΠΎΠΆΠ½ΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Π·Π°Π΄Π°Ρ Π·Π°ΠΊΡΡΠ²Π°Π΅ΡΡΡ. ΠΠ΅Π½Ρ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π°, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ. ΠΠΎΠΌΠ°Π½Π΄Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅Π½Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠΏΠΈΡΠΊΠ΅:
β‘ ΠΠ±Π½ΠΎΠ²ΠΈΡΡ β ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ;
β‘ ΠΡΠΎΡΠ΅ΡΡΡ β ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ²;
β‘ ΠΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ β ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π²ΡΠ±ΡΠ°Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ;
β‘ ΠΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ β ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ;
β‘ ΠΠΈΠ΄ β ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ΅;