所以我是Xamarin Forms的新手,我发现了两种添加按钮的方法:
1.解开.xaml文件中的按钮
<!-- <Button Text="Click Me!"
Clicked="OnButtonClicked" VerticalOptions="CenterAndExpand" />-->
和.xaml.cs文件
public void OnButtonClicked(object sender, EventArgs args)
{
count++;
label.Text =
String.Format("{0} click{1}!", count, count == 1 ? "" : "s");
仅在.xaml.cs文件中声明按钮
using System;
using Xamarin.Forms;
namespace FormsGallery
{
class ButtonDemoPage : ContentPage
{
Label label;
int clickTotal = 0;
public ButtonDemoPage()
{
Label header = new Label
{
Text = "Button",
Font = Font.BoldSystemFontOfSize(50),
HorizontalOptions = LayoutOptions.Center
};
Button button = new Button
{
Text = "Click Me!",
Font = Font.SystemFontOfSize(NamedSize.Large),
BorderWidth = 1,
HorizontalOptions = LayoutOptions.Center,
VerticalOptions = LayoutOptions.CenterAndExpand
};
button.Clicked += OnButtonClicked;
label = new Label
{
Text = "0 button clicks",
Font = Font.SystemFontOfSize(NamedSize.Large),
HorizontalOptions = LayoutOptions.Center,
VerticalOptions = LayoutOptions.CenterAndExpand
};
// Accomodate iPhone status bar.
this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5);
// Build the page.
this.Content = new StackLayout
{
Children =
{
header,
button,
label
}
};
}
void OnButtonClicked(object sender, EventArgs e)
{
clickTotal += 1;
label.Text = String.Format("{0} button click{1}",
clickTotal, clickTotal == 1 ? "" : "s");
}
}
}
但问题是:我想知道哪种方式更适合添加按钮,并且不会出现任何未来的代码问题。
谢谢!
答案 0 :(得分:4)
实际上他们是一样的。这取决于他人的选择。
我更喜欢XAML而不是代码,因为
您可以在此处详细找到答案 https://developer.xamarin.com/guides/xamarin-forms/creating-mobile-apps-xamarin-forms/summaries/chapter07/
答案 1 :(得分:1)
它们在功能上是等同的。在XAML中构建UI通常可以更清晰地分离设计中的关注点,但是一种方法并不是更好的&#34;比另一个。
答案 2 :(得分:0)
他们是一样的。在使用XAML构建UI之后,将其转换为与C#等效的UI,与使用C#编写视图相同。
根据需要对UI进行编码。对我来说,更好的方法是XAML,因为它更干净,更容易理解。
答案 3 :(得分:0)
我同意上述评论,使用XAML或C#取决于您的偏好。另外,我建议很快研究绑定和MVVM,因为它们使UI代码更加清晰。对于按钮,您可以使用命令直接引用ViewModel,而不是在UI代码中使用Click侦听器。
在这里您可以开始使用数据绑定和MVVM:https://developer.xamarin.com/guides/xamarin-forms/xaml/xaml-basics/data_bindings_to_mvvm/