无法访问“代码隐藏”文件中的条目?

时间:2019-01-31 10:16:01

标签: c# xamarin.forms

我是Xamarin形式的初学者。

我写了一个简单的代码,将两个数字相加。 但是在Visual Studio文件后面的代码中,不要在智能感知中提供条目(x:Name),当我显式键入并将其转换为整数并将它们添加在一起时,模拟器将显示“未捕获的异常:指定的Cast无效”。

  

我多次清理了解决方案并重新构建,但是   情况还是一样!

MainPage.xaml:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:HelloWorld"
             x:Class="HelloWorld.MainPage">

    <StackLayout>
        <!-- Place new controls here -->
        <Label Text="Welcome to Xamarin-Forms!" 
           HorizontalOptions="Center"
           VerticalOptions="CenterAndExpand" />
        <Entry x:Name="first_number" Placeholder="Enter First Number" />
        <Entry x:Name="second_number" Placeholder="Enter Second Number" />
        <Button x:Name="btn_click" Text="Add" Clicked="Btn_click_Clicked" 
           HorizontalOptions="Center"
           VerticalOptions="CenterAndExpand" />
    </StackLayout>

</ContentPage>

MainPage.xaml.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;

namespace HelloWorld
{
    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private void Btn_click_Clicked(object sender, EventArgs e)
        {
            int firstNumber = Convert.ToInt32(first_number);
            int secondNumber = Convert.ToInt32(second_number);

            int result = firstNumber + secondNumber;
            DisplayAlert("On Button Click Event", "Addition of Two Number is  : " + result, "OK");
        }
    }
}

1 个答案:

答案 0 :(得分:-1)

您正在尝试将Entry转换为Int。

您想要的是输入值,更具体地说是first_number.Text;

所以,在您的代码中

int firstNumber = Convert.ToInt32(first_number.Text);
int secondNumber = Convert.ToInt32(second_number.Text);