加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – Xamarin无法访问代码背后的控件

发布时间:2020-12-15 22:10:29 所属栏目:百科 来源:网络整理
导读:对于我的Xamarin表单项目(最新版本1.3),当我在Xamarin Studio(最新版本,5.5.4)中创建视图时,我将视图定义如下: ?xml version="1.0" encoding="UTF-8"?ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/wi
对于我的Xamarin表单项目(最新版本1.3),当我在Xamarin Studio(最新版本,5.5.4)中创建视图时,我将视图定义如下:

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="FormsDemo.Register">
    <ContentPage.Content>

        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="100" />
                <ColumnDefinition />
            </Grid.ColumnDefinitions>

            <Label Grid.Row="0" Grid.Column="0" Text="First Name" />
            <Entry x:Name="FirstName" Grid.Row="0" Grid.Column="1" />

            <Label Grid.Row="1" Grid.Column="0" Text="Last Name" />
            <Entry x:Name="LastName" Grid.Row="1" Grid.Column="1" />

            <Label Grid.Row="2" Grid.Column="0" Text="Email" />
            <Entry x:Name="Email" Grid.Row="2" Grid.Column="1" />

            <Button x:Name="SaveButton" Grid.Row="3" Grid.Column="0" Text="Login" />
        </Grid>

    </ContentPage.Content>
</ContentPage>

但是,在我的代码隐藏中,根本没有找到任何对名称控件的引用.以下代码是错误的(注释注释):

using System;
using System.Collections.Generic;
using Xamarin.Forms;

namespace FormsDemo
{   
    public partial class Register : ContentPage
    {   
        public Register ()
        {
            InitializeComponent ();

            //Using this approach worked,but is not ideal
            this.FindByName<Button>("SaveButton").Clicked += Save_Clicked;
        }

        void Save_Clicked (object sender,EventArgs e)
        {
            this.FirstName.Text = "A";
            this.LastName.Text= "B";
        }
    }
}

奇怪的是,我收到警告:

Warning: The private field `FormsDemo.Register.FirstName’ is assigned
but its value is never used (FormsDemo.Solution)

每个领域都有一个.为什么这不起作用?如何让intellisense工作?

解决方法

最新的更新似乎解决了这个问题;这些引用工作正常:

this.FirstName.Text = "A";
this.LastName.Text= "B";

看来一些设计师的问题得到了解决.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读