C # — Кто-нибудь может помочь мне с текстовым полем?

#c# #winforms

#c# #winforms

Вопрос:

Что я должен поместить в текстовое поле private void, чтобы пользователь ввел сумму, и эта сумма будет применена к месту ожидания соединения.SendToServerAsync (2700, 790); сейчас. итак, допустим, пользователь вводит 2000, 8 в текстовом поле, затем (2700 790) должно измениться на (2000, 8)

 namespace Application
{
    public partial class Form1 : ExtensionForm
    {
        public Form1()
        {
            InitializeComponent();
        }
        private async void button1_Click(object sender, EventArgs e)
        {
            int repeat = 5;

            for (int i = 0; i <= repeat; i  )
            {
                await Connection.SendToServerAsync(2700, 790);
                await Connection.SendToServerAsync(3745);
            }
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {

        }
    }
}
  

Я получил это в качестве ответа:

Вы можете получить значение текстового поля с помощью TextBox.Text. Оно поставляется в виде строки, поэтому вам нужно преобразовать в int. Вы можете сделать это, используя одно из следующих действий: Преобразование Int.Parse.В Int32 с преобразованным значением вы можете просто вызвать методы с новыми значениями при нажатии кнопки.

Кто-нибудь может показать мне, как это делается, скопировав мой код?

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

1. Извините, ваш вопрос показывает, что вы даже ничего не пробовали И просите нас выполнить вашу работу. Вы пытались вызвать int.Parse или ConvertToInt32 ? Покажите, что вы пробовали

Ответ №1:

вам не нужно textBox1_TextChanged() событие

грязный способ может быть следующим

    private async void button1_Click(object sender, EventArgs e)
    {
        int repeat = 5;

        for (int i = 0; i <= repeat; i  )
        {                
            await Connection.SendToServerAsync(2700, Int32.Parse(textBox1.Text); // <--|use the integer value to which textBox1 value can be cast to
            await Connection.SendToServerAsync(3745);
        }
    }
  

в то время как более надежный способ проверил бы возможность фактического преобразования значения TextBox1 в целое число, прежде чем продолжить:

     private async void button1_Click(object sender, EventArgs e)
    {
        int repeat = 5;
        int amount;

        if (Int32.TryParse(textBox1.Text, out amount)) // <--| go on only if textBox1 input value can be cast into an integer
            for (int i = 0; i <= repeat; i  )
            {                
                await Connection.SendToServerAsync(2700, amount); // <--| use the "amount" integer value read from textBox1
                await Connection.SendToServerAsync(3745);
            }
    }
  

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

1. @Misgracious, ты справился с этим?