|
Прошел курс. Получил код Dreamspark. Ввожу код на сайте, пишет: Срок действия этого кода проверки уже истек. Проверьте, правильно ли введен код. У вас осталось две попытки. Вы также можете выбрать другой способ проверки или предоставить соответствующие документы, подтверждающие ваш академический статус.
Как активировать код? |
Опубликован: 25.03.2010 | Уровень: для всех | Доступ: платный
Лекция 18:
Пользовательские компоненты
Испытание созданных компонентов
-
В проекте ComponentTest настройте пользовательский интерфейс, как показано на рисунке и в таблице (в скобках приведены имена экземпляров компонентов)
-
В панели Properties перейдите на вкладку Events и создайте обработчики для элементов согласно таблице
-
Заполните файл Form1.cs следующим кодом
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
namespace ComponentTest
{
public partial class Form1 : Form
{
// Конструктор формы
public Form1()
{
InitializeComponent();
// Заполнение списка планетами
for (int i = 0; i <= planets1.MaxIndex; i++)
{
listPlanets.Items.Add(String.Format(
"{0}) {1}", i, planets1[i]));
}
listPlanets.SelectedIndex = 0;
}
// Обработчики событий
private void firstComponent1_Click(object sender, EventArgs e)
{
// Контролируем пустой ввод
if (indexPlanet.Text == String.Empty) return;
int index = Convert.ToInt32(indexPlanet.Text);
// Контролируем максимальный индекс ввода
index = Math.Min(index, planets1.MaxIndex);
if (listPlanets.SelectedIndex != index)
listPlanets.SelectedIndex = index;
else
MessageBox.Show(String.Format("Вы выбрали
планету {0}", planets1[index]));
}
private void indexPlanet_KeyPress(object sender,
KeyPressEventArgs e)
{
// Фильтруем цифры, Backspace, Enter (Delete и стрелки по умолчанию)
if ((e.KeyChar < Convert.ToChar(Keys.D0) ||
e.KeyChar > Convert.ToChar(Keys.D9))
&& e.KeyChar != Convert.ToChar(Keys.Back)
&& e.KeyChar != Convert.ToChar(Keys.Enter))
e.Handled = true;
// Реакция на клавишу Enter
if (e.KeyChar == Convert.ToChar(Keys.Enter))
firstComponent1_Click(null, EventArgs.Empty);
}
bool loadFlag = true; // Локальное поле-флаг
private void listPlanets_SelectedValueChanged
(object sender, EventArgs e)
{
int index = listPlanets.SelectedIndex;
indexPlanet.Text = index.ToString();
if (loadFlag)
{
// При первом запуске не показывать
loadFlag = false;
return;
}
else
MessageBox.Show(String.Format("Вы выбрали
планету {0}", planets1[index]));
}
}
}
Листинг
18.9 .
Код файла Form1.cs
-
Откомпилируйте приложение текущего уровня готовности и испытайте его работу
