Содержит текстовое поле для массива - C # - PullRequest
0 голосов
/ 19 мая 2010

У меня есть текстовое поле, заполненное логическим. Как поместить содержимое в массив?

Спасибо.

Ответы [ 3 ]

4 голосов
/ 19 мая 2010

Это строка такая?

True False True True False False True

Если так, попробуйте это:

bool[] contents = myTextBox.Text.Split(' ') // or whatever your split char is
    .Select(s => bool.Parse(s))
    .ToArray();

Более надежный подход - игнорировать недопустимые значения, используя bool.TryParse:

bool[] contents = myTextBox.Text.Split(' ') // or whatever
    .Where(s => { bool discard; return bool.TryParse(s, out discard); })
    .Select(s => bool.Parse(s)) // a little redundant, but clean
    .ToArray();
0 голосов
/ 19 мая 2010

Другой способ -

 bool myBool;
 if (!bool.TryParse(myTbox.Text, out myBool))
  MessageBox.Show("Cannot convert text to bool.");
0 голосов
/ 19 мая 2010

Текстовое поле имеет строковое представление логического типа; вам нужно разыграть его:

bool myBool = bool.Parse (myTbox.Text);

А затем поместите его в свой массив.

...