Nano Hash - криптовалюты, майнинг, программирование

Запись в текстовое поле на отдельной форме (C #)

Предположим, у меня есть две формы: Form1 и Form2. Form2 имеет текстовый элемент управления с именем text1

В VB6 я мог писать в текстовое поле формы 2

управление из формы Form1 с помощью: Form2.Text1.text = "Здесь немного текста"

Как я могу заставить это работать на C #? Все перепробовала!

Что я пробовал:

Form2 Frm2 = new Form2();
Frm2.show();
Frm2.Activate(); // Trying everything to make sure it sees the form (it does).

Frm2.Text1 (Doesn't find the control)...

ОТВЕТ:

В итоге я создал общедоступную процедуру в Form2, а затем просто вызвал эту процедуру из form1. В этой общедоступной процедуре Form2 я бы затем вызвал текстовое поле!

15.06.2011

  • Если бы вы все перепробовали, то и правильно сделали бы. Если только вы не предполагаете, что это невозможно? 15.06.2011
  • Плохой вопрос. Объясните, что вы сделали, в каком отношении это не сработало и что вам удалось выяснить, почему. Не ждите, что мы сделаем всю работу. 15.06.2011
  • Если вы ответили на свой вопрос, опубликуйте его как ответ и примите его. 15.06.2011

Ответы:


1

Я считаю, что все элементы формы по умолчанию являются закрытыми. Поэтому вам придется переключить их определение на общедоступное (в вашем .designer.cs) или сделать общедоступный метод получения и установки для каждого текстового поля, к которому вы хотите получить доступ.

15.06.2011
  • Кажется, работает, установив модификаторы (на панели свойств текстового поля) на Public 21.10.2015

  • 2

    Вам необходимо сохранить ссылку на вторую форму в первой форме.

    // form1 code 
    // variables
    Form2 myForm2;
    // Form1_Loaded event handler
    myForm2 = new Form2();
    myForm2.Show();
    // place where you want to change text on form2 from within form1
    myForm2.Text1.Text = "Some text here";
    
    15.06.2011
  • Это то, что я пытался ... Имя моего текстового элемента не отображается, когда я набираю Form2. 15.06.2011
  • Обратите внимание, что я объявляю переменную типа Form2 с именем myForm2 - вы делаете то же самое? 15.06.2011
  • ваша управляющая переменная (Text1) не помечена как общедоступная. Вы можете установить область действия переменной напрямую в Form2.Designer.cs или в окне свойств текстового поля. 15.06.2011
  • Думаю, может быть доступно - попробую! 15.06.2011

  • 3

    У вас должна быть ссылка на экземпляр Form2, чтобы писать в него. Передайте ссылку на экземпляр Form2 в Form1, а затем манипулируйте им, как вы ожидаете. Вы можете передать этот экземпляр через конструктор или передать его позже. Вы также можете сохранить ссылку на экземпляр в центральном месте. Просто убедитесь, что вы не создаете новый экземпляр Form2, когда пытаетесь получить к нему доступ. Например, если вы поместите в форму следующий код:

    Form2 myInstance = new Form2();
    

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

    15.06.2011

    4

    Моей целью было добавить текст в текстовое поле другой формы. У меня были Form1 и Form2. Form2 имеет элемент управления текстовым полем с именем Text1. Чтобы заставить эту работу работать, я создал подпрограмму:

    public Void WriteToText(string sData)
    {
    // Here is where I wrote to my textbox
    Text1.text = sData;
    }
    

    Код формы 1:

    Form2 Frm2 = new Form2();
    Frm2.WriteToText("My Data");
    
    15.06.2011
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

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

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..