gmanishg Ответов: 2

Добавление значения двух текстовых полей в WPF


Всем Привет

Я занимался кодированием в VBA winform, но теперь пытаюсь перейти в WPF. Conding в winform и WPF-это совсем другое. Может ли кто-нибудь подсказать мне, как добавить значение двух текстовых полей и получить результаты в третьем текстовом поле. Поскольку моя работа, как правило, связана только с математическим кодированием. Также направьте меня, будет ли хорошо разрабатывать математическое приложение в WPF ?

Что я уже пробовал:

функция val(textbox3 и.текст)= вал(элемент textbox1.текст)+вал(поле textbox2.текст)

2 Ответов

Рейтинг:
2

Sandeep Mewara

О выборке из добавление двух чисел в WPF[^] в VB.NET было бы что - то вроде:
код XAML:

<Window x:Class="WPFTutorial.MainWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="MainWindow" Height="385.821" Width="653.358">
    <Grid>
        <TextBox x:Name="tb_num1" HorizontalAlignment="Left" Height="23" Margin="142,51,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120" RenderTransformOrigin="0.431,0.546"/>
        <Label Content="Number1" HorizontalAlignment="Left" Margin="48,45,0,0" VerticalAlignment="Top" Width="94"/>
        <Label Content="Number2" HorizontalAlignment="Left" Margin="48,76,0,0" VerticalAlignment="Top"/>
        <TextBox x:Name="tb_num2" HorizontalAlignment="Left" Height="23" Margin="142,79,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Button x:Name="btn_sum" Content="Sum" HorizontalAlignment="Left" Margin="48,107,0,0" VerticalAlignment="Top" Width="60" Click="Button_Click_1"/>
        <TextBox x:Name="tb_result" HorizontalAlignment="Left" Height="23" Margin="142,107,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120" />
    </Grid>
</Window>

Язык XAML.ВБ:
Private Sub btn_sum_click(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim result As Integer = Int32.Parse(tb_num1.Text) + Int32.Parse(tb_num2.Text)
    tb_result.Text = result.ToString()
End Sub

Для изучения WPF вот несколько хороших материалов, которые вы можете пройти и понять основы для начала:
Windows Presentation Foundation - WPF | Microsoft Docs[^]
WPF: руководство для начинающих - часть 1 из n[^]
Учебник по WPF[^]

Практикуйтесь, чтобы узнать и понять больше. Попробуй!

ОБНОВЛЕНИЕ:
С. П.: Код предназначен для базовой справки и имеет петлевые отверстия вокруг валидаций. Предполагая, что существует число и преобразование непосредственно в целое число не очень хорошо, и следует либо поставить проверки проверки данных, чтобы убедиться, что это целое число, либо использовать tryParse при преобразовании данных в определенный тип данных. Кредиты за это обновление для @Dave-Kreskowiak


Dave Kreskowiak

И если пользователь набирает что-то, кроме полностью действительного номера, и нажимает кнопку, Вы получаете исключение.

Я всегда использую TryParse вместо Parse. Вы получаете обратную связь о преобразовании без создания/обработки исключений.

Sandeep Mewara

Согласен, Дэйв. Учитывая, что он был новичком, хотел, чтобы все было просто для него, чтобы понять - что он может взаимодействовать во время запуска.

Однако я приму ваш совет обновить и поделиться тем же самым. Спасибо.

Рейтинг:
17

OriginalGriff

Начните с проверки значений текстового поля:

Dim val1 As Integer

If Not Integer.TryParse(myTextBox1.Text, val1) Then
    ... report a bad number to the user ...
    Return
End If
Сделайте это для каждого текстового поля ввода и вы получите два целых числа val1 и val2
Тогда это тривиально:
MyOutputTextBox.Text = (val1 + val2).ToString()