我刚开始编码。 Alhought Helloworld代码,我收到此错误:xamarin.forms.xamlparseexception:位置12:13无法分配属性"单击":属性不存在,或者不可分配,或者值和属性之间的类型不匹配
我想调试的设备佩戴智能手表KW88-android 5.1。
代码:
namespace HelloWorld
{
[global::Xamarin.Forms.Xaml.XamlFilePathAttribute("C:\\Users\\Gizem\\source\\repos\\HelloWorld\\HelloWorld\\HelloWorld\\MainPage.xaml")]
public partial class MainPage : global::Xamarin.Forms.ContentPage {
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Forms.Build.Tasks.XamlG", "0.0.0.0")]
private void InitializeComponent() {
global::Xamarin.Forms.Xaml.Extensions.LoadFromXaml(this, typeof(MainPage));//Exception here!!!*****
}
}
}
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">
<Label Text="Welcome to Xamarin.Forms!"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Entry Placeholder="Write your name"/>
<Button Text="say hello"
Click="Button_Click"/>
xaml.cs:
using System;
using Xamarin.Forms;
namespace HelloWorld
{
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
void Button_Click(object sender, EventArgs e)
{
}
}
}
答案 0 :(得分:1)
要绑定的属性名为Clicked
,而不是Click
。将您的代码更改为
<Button Text="say hello"
Clicked="Button_Click"/>
它应该有用。
修改强>
Alessandro Caliaro非常关注ContentPage只能包含一个元素。因此,您还需要将控件包装到容器中,例如StackLayout
:
<StackLayout VerticalOptions="Center" >
<Label Text="Welcome to Xamarin.Forms!"
HorizontalOptions="Center" />
<Entry Placeholder="Write your name"/>
<Button Text="say hello"
Clicked="Button_Click"/>
</StackLayout>
答案 1 :(得分:1)
我认为您应该将控件添加到布局(如StackLayout),否则可能会出现其他问题。