Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework

Тут можно читать онлайн Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом Вильямс, год 2006. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Программирование мобильных устройств на платформе .NET Compact Framework
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс
  • Год:
    2006
  • Город:
    Москва • Санкт-Петербург • Киев
  • ISBN:
    5-8459-0989-9
  • Рейтинг:
    4.22/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework краткое содержание

Программирование мобильных устройств на платформе .NET Compact Framework - описание и краткое содержание, автор Иво Салмре, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Книга известного профессионала в области компьютерных технологий посвящена разработке приложений для широкого спектра мобильных устройств с использованием популярной и постоянно развивающейся платформы .NET Compact Framework. Уникальность этой книги состоит в том, что в ней гармонично переплетены теоретические сведения обо всем цикле разработки программного обеспечения с практическими примерами применения на языках С# и Visual Basic. Подробно рассматриваются концепции, лежащие в основе самой платформы .NET Compact Framework, а также вопросы, связанные с созданием эффективного пользовательского интерфейса, управлением памятью, производительностью и надежностью. Немалое внимание уделяется практическим аспектам разработки приложений для мобильных устройств, среди которых выбор модели представления и доступа к данным, внедрение коммуникационной модели, реализация модели поведения с помощью конечных автоматов и использование XML.

Книга рассчитана на разработчиков разной квалификации, а также может быть полезна для студентов и преподавателей соответствующих специальностей.

Программирование мобильных устройств на платформе .NET Compact Framework - читать онлайн бесплатно полную версию (весь текст целиком)

Программирование мобильных устройств на платформе .NET Compact Framework - читать книгу онлайн бесплатно, автор Иво Салмре
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

m_inputIsFullValidEntry = false;

}

//---------------------------------------------------------------------

//Форматировать поступающий текст с целью установления его соответствия

//нужному формату:

//

// Формат номера карточки социального страхования : ###-##-####

// символы: 01234567890

//

// [in] inString : Текст, который мы хотим форматировать

// [in/out] selectionStart: Текущая точка вставки в тексте;

// она будет смещаться в связи с удалением

// и добавлением нами символов

//----------------------------------------------------------------------

private string formatText_NNN_NN_NNNN(string inString, ref int selectionStart) {

const int firstDashIndex = 3;

const int secondDashIndex = 6;

//Удалить старые данные и поместить входную строку

//в объект StringBuilder, чтобы мы могли с ней работать.

m_sb.Length = 0;

m_sb.Append(inString);

//------------------------------------------------------------

//Просмотреть каждыйсимвол в строке, пока не будет

//достигнута максимальная длина нашего форматированного текста

//------------------------------------------------------------

int currentCharIndex;

currentCharIndex = 0;

while ((currentCharIndex < m_sb.Length) && (currentCharIndex < SSNumberLength)) {

char currentChar;

currentChar = m_sb[currentCharIndex];

if ((currentCharIndex == firstDashIndex) || (currentCharIndex == secondDashIndex))

//-------------------------------

//Данным символом должен быть "-"

//-------------------------------

{

if (currentChar != '-') {

//Вставить дефис

m_sb.Insert(currentCharIndex, "-");

//Если мы добавили символ перед точкой вставки,

//она должна быть смещена вперед

if (currentCharIndex <= selectionStart) {

selectionStart++;

}

}

//Этот символ годится, перейти к следующему символу

currentCharIndex++;

} else

//-------------------------

//Символ должен быть цифрой

//-------------------------

{

if (System.Char.IsDigit(currentChar) == false) {

//Удалить символ

m_sb.Remove(currentCharIndex, 1);

//Если мы добавили символ перед точкой вставки,

//она должна быть смещена назад

if (currentCharIndex < selectionStart) {

selectionStart--;

}

//He увеличивать значение счетчика символов, ибо мы должны

//просмотреть символ, занявший место того символа,

//который мы удалили

} else {

//Символ является цифрой, все нормально.

currentCharIndex++;

}

}

}

//Если превышена длина строки, усечь ее

if (m_sb.Length > SSNumberLength) {

m_sb.Length = SSNumberLength;

}

//Возвратить новую строку

return m_sb.ToString();

}

bool m_in_OnChangeFunction;

protected override void OnTextChanged(EventArgs e) {

//------------------------------------------------------------------

//Если мы изменим свойство .Text, то будет осуществлен повторный

//вход в обработчик. В этом случае мы не хотим предпринимать никаких

//действий и должны просто выйти из функции без передачи события

//куда-то еще.

//------------------------------------------------------------------

if (m_in_OnChangeFunction == true) {

return;

}

//Заметьте, что сейчас мы находимся в функции OnChanged,

//поэтому мы можем обнаружить повторное вхождение (см. код выше)

m_in_OnChangeFunction = true;

//Получить текущее свойство .Text

string oldText = this.Text;

//Получить текущий индекс

SelectionStart int selectionStart = this.SelectionStart;

//Форматировать строку, чтобы она удовлетворяла нашим потребностям

string newText = formatText_NNN_NN_NNNN(oldText, ref selectionStart);

//Если текст отличается от исходного, обновить

//свойство .Text

if (System.String.Compare(oldText, newText) != 0) {

//Это приведет к повторному вхождению

this.Text = newText;

//Обновить местоположение точки вставки

this.SelectionStart = selectionStart;

}

//Мы принудительно обеспечили соответствие введенного текста

//правильному формату, поэтому, если длина строки согласуется с длиной

//номера карточки социального страхования, то мы знаем что она имеет

//формат ###-##-####.

if (this.Text.Length == SSNumberLength) {

//Да, мы имеем полный номер карточки социального страхования

m_inputIsFullValidEntry = true;

} else {

//Нет, мы пока не получили полный номер карточки социального страхования

m_inputIsFullValidEntry = false;

}

//Вызвать наш базовый класс и сообщить всем объектам, которых это

//может интересовать, что текст изменился

base.OnTextChanged(e);

//Заметьте, что сейчас мы покидаем наш код и хотим отключить

//проверку повторных вхождений в него.

m_in_OnChangeFunction = false;

}

protected override void OnKeyPress(System.Windows.Forms.KeyPressEventArgs e) {

//Поскольку нам известно, что никакие буквы при вводе нам не нужны,

//то просто игнорировать их, если они встречаются.

char keyPressed = e.KeyChar;

if (System.Char.IsLetter(keyPressed)) {

//Сообщить системе о том, что событие обработано

e.Handled =true;

return;

}

//Обработать нажатие клавиши обычным способом

base.OnKeyPress(e);

} //Конец функции

} //Конец класса

Листинг 13.4 Код формы для создания пользовательского элемента управления TextBox

//-----------------------------------------------------------------

//Переменная для хранения нашего нового элемента управления TextBox

//-----------------------------------------------------------------

SocialSecurityTextBox m_filteredTextBox;

//--------------------------------------------------------------

//ОБРАБОТЧИК СОБЫТИЙ: Создать экземпляр нашего пользовательского

// элемента управления и поместить его в форму

//--------------------------------------------------------------

private void button1_Click(object sender, System.EventArgs e) {

//Создать, позиционировать и разместить элемент управления

m_filteredTextBox = new SocialSecurityTextBox();

m_filteredTextBox.Bounds = new System.Drawing.Rectangle(2, 2, 160, 20);

//Подключить обработчик событий

m_filteredTextBox.TextChanged += new EventHandler(this.textBox_TextChanged);

//Задать родительский объект

m_filteredTextBox.Parent =this;

//Выделить элемент управления

m_filteredTextBox.Focus();

//Сделать данную кнопку недоступной, чтобы поверх данного объекта

//не был создан второй объект

SocialSecurityTextBox button1.Enabled = false;

}

//----------------------------------------------------------------

//ОБРАБОТЧИК СОБЫТИЙ: Этот обработчик подключается динамически при

// создании элемента управления

//----------------------------------------------------------------

private void textBox_TextChanged(object sender, System.EventArgs e) {

if (m_filteredTextBox.IsFullValidInput == true) {

label1.Text = "FULL SOCIAL SECURITY NUMBER!!!";

} else {

label1.Text = "Not full input yet...";

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Иво Салмре читать все книги автора по порядку

Иво Салмре - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Программирование мобильных устройств на платформе .NET Compact Framework отзывы


Отзывы читателей о книге Программирование мобильных устройств на платформе .NET Compact Framework, автор: Иво Салмре. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x