C# - Индекс находился вне границ массива

111
12 июля 2019, 17:00
switch(Shabli)
{
    case 0:
        PhraseToRandomDistFL(MainForm.phrases[this.rnd.Next(0, MainForm.phrases.Length)]);
        break;
    case 1:
        PhraseToRandomDistFL(MainForm.phrases[MainForm.phrases.Length]);
        break;
}

MainForm.phrases - это текстовый документ в папке софта. MainForm.phrases = File.ReadAllLines("Shablons.txt", Encoding.GetEncoding("windows-1251"));

Хочу сделать так чтобы брало текст не по рандому, а поочередно, а мне выбывают ошибки, как сделать?

Answer 1
// class member
private int currentLineIndex;
  ...
  MainForm.phrases = File.ReadAllLines("Shablons.txt", Encoding.GetEncoding("windows-1251"));
  currentLineIndex = 0;

  ...
  if (currentLineIndex < MainForm.phrases.Length)
    PhraseToRandomDistFL(MainForm.phrases[currentLineIndex++]);
Answer 2

В PhraseToRandomDistFL такая же система

switch(Shabli)
        {
            case 0:
                this.rnd.Next(0, this.phrasesTargetsFL.Count);
                break;
            case 1:
                this.phrasesTargetsFL.Count;
                break;
        }

Первый работает, а второй нет.

READ ALSO
Чтение параметров из INI файла

Чтение параметров из INI файла

Подскажите как прочитать параметры из INI файла, таким образом, чтобы при загрузке формы они использовались для checkBox

138
Создание asp.net mvc проекта с onion архитектурой

Создание asp.net mvc проекта с onion архитектурой

Изучаю mvc 5 на metanitДобрался до пункта архитектура приложений

150
C# WPF Передать View в ViewModel при ItemsSource

C# WPF Передать View в ViewModel при ItemsSource

Есть TabControl с ItemsSource и биндингом к TabItem с ViewModelКак мне передать в TabItem ViewModel TabItem View?

146
Как разделить товары по категориям?

Как разделить товары по категориям?

Требуется разделить товары на категории, на странице товаров - чтобы шёл заголовок категории, по центру, а дальше товары из неё, как на блок-схеме...

144