Задать вопрос
@Bwn_z

C# Обработка события?

добрый день. Может в шапке, тема немного размытая, но суть такова. Есть код, в Create создаются 100 текстбоксов, есть динамическая кнопка, хочу сделать событие "если кнопка нажата, то обработать значения в текстбоксах", обработка идет по событию клик, но не пойму как работать теперь с этими 100 текстбоксами. Для теста создал str1, в который будут записывать значения текстбоксов по первой строке, т.е. [0,1],[0,2]....[0,9]. Сделал вывод в одну из боксов, чтобы просто посмотреть результат. В результате было в текстбокс вывело {System.Windows.Forms.TextBox, Text: s System.Windows.Forms.TextBox, Text: System.Windows.Forms.TextBox, Text: sSystem.Windows.Forms.TextBox, Text: System.Windows.Forms.TextBox, Text: System.Windows.Forms.TextBox, Text: System.Windows.Forms.TextBox, Text: System.Windows.Forms.TextBox, Text: System.Windows.Forms.TextBox, Text: System.Windows.Forms.TextBox, Text:} Почему выводит System?????? :
https://paste.ofcode.org/CrN6ki4XKiZXXiFWZsbSfQ
  • Вопрос задан
  • 123 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
mindtester
@mindtester Куратор тега C#
http://iczin.su/hexagram_48
попробуете изменить тут
str1 += tbArray[i, j].Text

ps строка 78 исходника.. а вообще сам подход.. по меньшей мере странен.. TexBox это отображаемый контрол, но 100 текстбоксов - это откровенная несуразица... такой UI не жизнеспособен.. ну а если не нужны визуальные контролы - используйте строки.. или StrinBuilder, в зависимости от задачи

pps у всех потомков obj, есть метод ToString() .. но он возвращает тип объекта.. далеко не все потомки obj имеют поле Text, по этому, разработчики, вполне логично, не переопреоделяют данный метод, без явной необходимости

ppps наиболее очевидные поводы, переопределять ToString() у типов вроде Int32, Int64, Float, Double, в общем у value-типов.. но TextBox (повторюсь) визуальный контрол, если вы не планируете насиловать внимание пользователя, просмотром 100 (или более?) текстов.. то, тем не менеее, вы будете насиловать ресурсы компа )).. и ЦПУ, и ГПУ, на их отображение, или по меньшей мере, готовность к отображению... я думаю, вам стоит пересмотреть архитектуру своего приложения

pppps если вы используете заготовки чужего кода, обратите внимание, что TextBox.Text это: - во первых реальное хранилище текста, во вторых это банальный string... надеюсь эта подсказка поможет

ppppps дружите с MSDN.. благо кнопка F1, в абсолютно бесплатной студии VS 2017 Community очень в этом помогает
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы