Рейтинг@Mail.ru
Полезные советы

Полезные советы (67)

Короткие практические полезные советы из области ИТ.

Что делать, если Quartus не видит USB Blaster

Print Friendly, PDF & Email

Если вы корректно установили драйверы для программатора USB Blaster, а он всё равно не видится из среды Quartus II и выдаёт что-то такое:

Сообщение об ошибке при загрузке Quartus ii 8.1

или ошибку с кодом 82:

Сообщение об ошибке при загрузке Quartus ii 13.1

Вероятнее всего, что проблема в сервере JTAG. Бывает, что его блокирует антивирус или фаервол. В таком случае, если файл jtagserver.exe не находится в директории quartus\bin и quartus\bin64, то следует его восстановить из вирусного хранилища и добавить в список исключений. Если же файл присутствует в указанных директориях, то следует отключить антивирус и фаерол, в затем запустить файл с параметром:
jtagserver.exe --install

После этого USB Blaster должен появиться в списке оборудования (Hardware).

Print Friendly, PDF & Email

Параметры проекта по умолчанию в Visual Studio

Print Friendly, PDF & Email

Рекомендую при написании кода в Visual Studio на VB.NET всегда использовать жёсткую проверку соответствия типов, которая задаётся директивой Option Strict. При создании нового проекта с настройками среды по умолчанию, используется нестрогая проверка. Чтобы каждый раз не менять данную директиву в свойствах проекта, её можно поменять в настройках Visual Studio: Options — Projects and Solutions — VB Defaults — Option Strict

Настройки по умолчанию для новых проектов, создаваемых в Visual Studio
Настройки по умолчанию для новых проектов, создаваемых в Visual Studio
Print Friendly, PDF & Email

Добавление собственных определений для списка задач (Task List Tokens) в Visual Studio

Print Friendly, PDF & Email

Если при наборе кода в редакторе кода Visual Studio написать закомментированное слово TODO, то эта строка появится в окне списка заданий (View — Other Windows — Task List). Если после TODO написать какое-то описание, то оно также появится в этом окне. Например, так:

//TODO Реализовать этот метод другим алгоритмом (на C#)
или так:
'TODO Реализовать этот метод другим алгоритмом (на VB.NET)
Print Friendly, PDF & Email

Установка масштаба 100% в редакторе XAML

Print Friendly, PDF & Email

В Visual Studio в визуальном редакторе XAML, вплоть до новейшей версии 2019 года, когда открываешь проект и загружаешь интерфейс окна, страницы или пользовательского элемента управления, среда выводит его порой в совершенно неудобном масштабе. Так, например, создаваемое окно в редакторе XAML может отобразиться в масштабе 600% или, наоборот, в масштабе 10% от оригинального. Приходится использовать маленькое выпадающее меню в углу, в котором можно задать масштаб. Да, при повторной загрузке этого окна, Visual Studio запомнит выбранный пользователем масштаб и будет использовать его. Но при выгрузке проекта и повторной загрузке данная информация не сохраняется Придётся снова вручную задавать масштаб. Это долго и неудобно.

Print Friendly, PDF & Email

Добавление заданного текста к содержимому RichTextBox (WPF)

Print Friendly, PDF & Email

Напишем метод, который добавляет к содержимому расширенного текстового поля RichTextBox текст заданного цвета:

Private Sub AppendText(text As String, color As Color)
    With RichTextBox1
            .SelectionStart = RichTextBox1.TextLength
            .SelectionLength = 0
            .SelectionColor = color
            .AppendText(text)
            .SelectionColor = .ForeColor
    End With
End Sub
Print Friendly, PDF & Email

Определение константы в XAML

Print Friendly, PDF & Email

Можно определить константу заданного типа прямо в XAML, а не в коде. Для этого следует в разделе импорта пространств имён сослаться, среди прочих, на пространство имён System:

xmlns:sys="clr-namespace:System;assembly=mscorlib"

Далее в разделе ресурсов следует объявить константу необходимого типа. Например, для определения строковой константы:

<sys:String x:Key="myConst">Это константа, определённая в  XAML</sys:String>

Аналогичным образом можно объявить даже массив:

<x:Array Type="{x:Type sys:Int32}" x:Key="myIntegerArray">
    <sys:Int32>1</sys:Int32>
    <sys:Int32>2</sys:Int32>
    <sys:Int32>3</sys:Int32>
    <sys:Int32>4</sys:Int32>
</x:Array>

Теперь, в XAML коде страницы или окна, можно использовать определённую константу так:

<TextBlock Text="{StaticResource myConst}" />

Или так:

<ComboBox ItemsSource="{StaticResource myIntegerArray}" />
Print Friendly, PDF & Email

Стили обрезки тек текста в TextBlock (WPF)

Print Friendly, PDF & Email

У элемента управления TextBlock имеется интересное свойство TextTrimming, которое позволяет определить стиль, как будет отображаться текст, который полностью не помещается в родительском контейнере. Например, если указать так:

<TextBlock TextTrimming="WordEllipsis" />

то, после последнего помещающегося слова в текстовом поле будет стоять многоточие, которое показывает, что текст показывается не полностью. А если задать свойству такое значение:

<TextBlock TextTrimming="CharacterEllipsis" />

то многоточие будет стоять после последнего символа, помещающегося в родительском контейнере. При этом слово может быть оборвано в середине.

Print Friendly, PDF & Email

Использование нескольких конструкторов в одном блоке Using (VB.NET)

Print Friendly, PDF & Email

В Visual Basic .NET есть такая, довольно часто встречающаяся, конструкция:

Using fs As New FileStream(fi.FullName, FileMode.Open)
    Using sr As New StreamReader(fs, Text.Encoding.GetEncoding(1251))
	'...
    End Using
End Using

Для неё есть удобный сокращённый синтаксис:

Using fs As New FileStream(fi.FullName, FileMode.Open), sr As New StreamReader(fs, Text.Encoding.GetEncoding(1251))
    '...
End Using
Print Friendly, PDF & Email

Отмена привязки сочетания клавиш для команд в WPF

Print Friendly, PDF & Email

Иногда мы хотим отменить стандартное сочетание клавиш для какой-либо команды в XAML. Например, де-факто справка во всех WPF (и не только) приложениях вызывается по нажатию кнопки F1. Но мы хотим, чтобы окно справки открывалось по нажатию на F2, а на F1 – нет. Если мы напишем так:

<KeyBinding Key="F2" Command="Help" />

то справка будет открываться и по нажатию F2, и по нажатию F1. Необходимо явно отключить срабатывание по нажатию кнопки F1. Для этого следует написать так:

<KeyBinding Key="F2" Command="Help" />
<KeyBinding Key="F1" Command="NotACommand" />
Print Friendly, PDF & Email

Проверка значений, вводимых в поле TextBox, в XAML

Print Friendly, PDF & Email

В WPF имеется специальный стандартный механизм, позволяющий выполнять проверку (валидацию) данных, вводимых пользователем в текстовое поле TextBox. Этот механизм называется правилами проверки (validation rule). Для полей ввода, в которые введены недопустимые значения, в WPF даже определён свой стиль: красная рамка вокруг элемента TextBox. Конечно, его можно переопределить.

Чтобы воспользоваться стандартным валидатором, нужно выполнить три простых шага. Давайте рассмотрим их на таком примере: есть свойство MyProperty типа Integer, и его значение должно лежать в границах от 1 до 10.

1) Сначала создаём класс, который является наследником класса ValidationRule:

Print Friendly, PDF & Email

Объединение строк с помощью заданного символа

Print Friendly, PDF & Email

Зачастую бывает необходимо объединить несколько строк с помощью какого-то символа. Например, при формировании строки таблицы для записи в текстовый файл. Можно, разумеется, делать это с помощью конкатенации явно, а можно воспользоваться статическим методом String.Join():

String.Join("-", {"A", "B", "C", "D"})

Результатом выполнения этого когда, как не сложно догадаться, будет строка "A-B-C-D". В качестве разделителя может выступать как один символ, так и целая строка, состоящая из нескольких символов.

Print Friendly, PDF & Email

Мнемоническое правило написания "тся" и "ться"

Print Friendly, PDF & Email

Заметка совершенно не по теме блога, но всё же напишу. Я люблю русский язык, и мне больно смотреть на то, как люди в последние годы становятся всё менее грамотными и всё проще относятся к наследию наших предков – великому русскому языку. В частности, многие совершенно безобразно путают, как правильно писать ТСЯ и ТЬСЯ в глаголах. Они помнят, что когда-то в школе им рассказывали, что в некоторых случаях ТЬСЯ пишется с мягким знаком, и теперь вставляют его везде, где нужно и не нужно. Из-за этого порой получаются слова, которых и вовсе не существует в русском языке (например, «перемещаеться»). Но давайте ближе к делу.

Очень легко запомнить, в каком случае в глаголе следует писать «тся», а в каком «ться». Существует такое простое мнемоническое правило. Задаём вопрос к глаголу – «что делает?» или «что делать?». Если подходит первый вариант – «что делает?» – значит, «тся» пишется без мягкого знака (обратите внимание: в вопросе также нет мягкого знака). Если подходит форма вопроса «что делать?» (с мягким знаком), значит и в глаголе пишем мягкий знак: «ться».

Рассмотрим пример.

Print Friendly, PDF & Email

Если после подключения M.2 SSD диска пропал основной диск

Print Friendly, PDF & Email

Допустим, у вас в компьютере установлен диск (HDD или SSD – неважно), подключённый по интерфейсу SATA. Вы решили докупить новый SSD диск с интерфейсом M.2 и поставить его дополнительно к первому. Вы вставляете новый M.2 диск в компьютер, а старый диск при этом перестаёт определяться как в операционной системе, так и в BIOS. Из-за чего такое бывает и что при этом делать?

Дело в том, что ваш M.2 диск, скорее всего, также работает по протоколу SATA , и для его работы необходимо как минимум два SATA порта. Диск M.2 «отбирает» себе ресурсы и отключает как минимум два SATA порта у вашей материнской платы, которые до этого использовались первым диском. Поэтому исходный диск больше не может работать.

Диски M.2 SSD различаются расположением и количеством ключевых вырезов
Диски M.2 SSD различаются расположением и количеством ключевых вырезов

Чтобы решить эту проблему, просто переключите ваш первый диск на другой ряд SATA разъёмов (конечно, если у вас стационарный ПК). Тогда ресурсы SATA шины распределятся между дисками без конфликтов, и ваш первый диск снова станет видеться в системе и восстановит нормальную работоспособность.

Print Friendly, PDF & Email
Подписаться на этот канал RSS