我有一个Xamarin便携式项目
我调试的Xaml页面完全是空白的,我在Android和IOS的页面上都看不到任何组件。
我该如何解决这个问题?
注意:没有错误消息,页面正在打开,我看不到任何内容。
问题发生在this error之后。当我修复它时,我调试的页面变为空白,
虽然他们在InitializeComponent错误之前工作。
非常感谢任何帮助。
这是我的xaml:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
namespace AcikAkademi3.Layoutlar
{
public partial class GridOrnek3 : ContentPage
{
public GridOrnek3()
{
Padding = new Thickness(0, 20, 0, 0);
}
}
}
这是我的cs:
using AcikAkademi3.Layoutlar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Xamarin.Forms;
namespace AcikAkademi3
{
public class App : Application
{
public App()
{
MainPage = new GridOrnek3();
}
protected override void OnStart()
{
}
protected override void OnSleep()
{
}
protected override void OnResume()
{
}
}
}
App.cs:
$data
答案 0 :(得分:5)
你应该在ctor中调用InitializeComponent()。 否则UI元素将不会从xaml文件初始化。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
namespace AcikAkademi3.Layoutlar
{
public partial class GridOrnek3 : ContentPage
{
public GridOrnek3()
{
InitializeComponent();
Padding = new Thickness(0, 20, 0, 0);
}
}
}
好, 看起来xaml文件中有错误
<Label BackgroundColor="Brown" Text="0,1" Grid.Column="0" Grid.Row="1">
</Label>
没有棕色,尝试从this table
中选择一些东西这对我有用
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0"
Grid.Row="0"
BackgroundColor="Red"
Text="0,0" />
<Label Grid.Column="1"
Grid.Row="0"
BackgroundColor="Blue"
Text="1,0" />
<Label Grid.Column="2"
Grid.Row="0"
BackgroundColor="Yellow"
Text="Açık Akademi"/>
<Label Grid.Column="0"
Grid.Row="1"
BackgroundColor="Olive"
Text="0,1" />
<Label Grid.Column="1"
Grid.Row="1"
BackgroundColor="Silver"
Text="1,1" />
<Label Grid.Column="2"
Grid.Row="1"
BackgroundColor="Lime"
Text="2,1" />
</Grid>
答案 1 :(得分:0)
事实上,似乎需要在InitializeComponent行。