Страницы

Поиск по вопросам

воскресенье, 2 февраля 2020 г.

Создание массива из TextBox

#c_sharp #wpf


Добрый день, подскажите как можно задать кол-во элементов массива из TextBox?

Должно получится что-то типа: 

string[] myArr = new string[TextBox.Text];


Выдает ошибку что не может преобразовать string в int

Или может быть подскажите другой способ, мне нужно чтобы исходя из числа введенного
в TextBox добавлялись записи в ListBox.
    


Ответы

Ответ 1



Правильно! Text- это string. Сделайте int32.Parse(TextBox.Text) и будет вам счастье.

Ответ 2



Свойство Text элемента TextBox Возвращает или задает текстовое содержимое текстового поля (string). Для создания массива заданной длины необходимо воспользоваться следующей конструкцией: type[] array = new type[N]; где type - тип переменных содержащихся в массиве. Элементы массива могут быть любых типов, включая тип массива; N - число элементов массива. Должно быть представлено целым положительным числом, включая 0. Таблицу целых типов, можно посмотреть на сайте MSDN В конкретно этом случае вы передаете тип string. string[] myArr = new string[TextBox.Text]; Для решения проблемы, необходимо привести содержимое TextBox.Text к целочисленному типу. Приведу пример преобразования. Данный пример учитывает, что в TextBox.Text введены корректные данные. n = int.Parse(TextBox.Text);

Ответ 3



Альтернативный способ для случая, если вы пользуетесь MVVM — привязать TextBox к целочисленному свойству. class VM : INotifyPropertyChanged { int n; public int N { get { return n; } set { if (n != value) { n = value; NotifyPropertyChanged(); } } } // ... void OnUserAction { string[] myArr = new string[N]; // ... } } Соответственно в XAML делаете привязку: (Разумеется, тут ещё нужны проверки, без них никуда.)

Комментариев нет:

Отправить комментарий