C# 如何在Xamarin表单项目中获取XAML文件中描述的控件?
我无法正确获取XAML文件中描述的控件。我给XAML文件中的按钮一个ClassId,并尝试使用FindByName在CS文件中访问它 这是在iOS Emulator中运行的Xamarin表单项目 在MainPage.XAML文件中 当我在iOS Emulator上运行应用程序时,我总是在MainPage.xaml.cs文件中最长的代码行中出现以下错误:C# 如何在Xamarin表单项目中获取XAML文件中描述的控件?,c#,xamarin.forms,xamarin.ios,C#,Xamarin.forms,Xamarin.ios,我无法正确获取XAML文件中描述的控件。我给XAML文件中的按钮一个ClassId,并尝试使用FindByName在CS文件中访问它 这是在iOS Emulator中运行的Xamarin表单项目 在MainPage.XAML文件中 当我在iOS Emulator上运行应用程序时,我总是在MainPage.xaml.cs文件中最长的代码行中出现以下错误: public MainPage() { InitializeComponent(); int
public MainPage()
{
InitializeComponent();
int num = 0;
((Button)FindByName("btnNum")).Clicked += (o, e) ((Label)FindByName("myLabel2")).Text = (++num).ToString();
}
*********
未处理的异常:
System.NullReferenceException:对象引用未设置为实例
物体的形状
*********
感谢您的帮助,如果我能从其他内容页获得有关访问控件的更多信息,那将非常好。为您的控件指定一个名称
<Button x:Name="MyButton" Text="" />
您需要使用x:Name指令,它可以在Xamarin.Forms中的任何控件中使用
从:
唯一标识XAML命名空间中XAML定义的元素。XAML
命名空间及其唯一性模型可应用于
实例化对象,当框架提供API或实现
在运行时访问XAML创建的对象图的行为
XAML中的用法:
<Label x:Name="myLabel1"
Text="Xamarin Form Demo"
HorizontalOptions="Center"/>
<Button
x:Name ="btnNum"
Text="Image Control"
HorizontalOptions="Center" />
非常感谢您的帮助,虽然直接使用其名称引用按钮对我来说不起作用,但ButtonFindByNameBtnum。单击此按钮现在效果非常好!在XAML文件中,名称必须跟在x:,这是什么x:?我是否需要将其用于其他属性?我在Microsoft的元素描述文档中找不到属性名称。x前缀是XAML命名空间。如果这不起作用,那么您的环境有问题。非常感谢@solidcomer别忘了标记为正确并向上投票:D
MyButton.Text = "blah blah blah";
<Label x:Name="myLabel1"
Text="Xamarin Form Demo"
HorizontalOptions="Center"/>
<Button
x:Name ="btnNum"
Text="Image Control"
HorizontalOptions="Center" />
myLabel1.Text = "test";
btnNum.Clicked +=