C# 用C创建活动指示器
是否可以在不使用XAML的情况下创建活动指示器?我已经在.cs中准备好了一个视图,我不想重新创建它。您也可以从代码中通过XAML创建每个控件。请参见下面的示例C# 用C创建活动指示器,c#,xaml,xamarin.forms,cross-platform,C#,Xaml,Xamarin.forms,Cross Platform,是否可以在不使用XAML的情况下创建活动指示器?我已经在.cs中准备好了一个视图,我不想重新创建它。您也可以从代码中通过XAML创建每个控件。请参见下面的示例 class MyView : ContentView { AbsoluteLayout _layout; ActivityIndicator _activityIndicator; void InitializeControls() { _layout = new AbsoluteLayo
class MyView : ContentView
{
AbsoluteLayout _layout;
ActivityIndicator _activityIndicator;
void InitializeControls()
{
_layout = new AbsoluteLayout();
this.Content = _layout;
// ...
_activityIndicator = new ActivityIndicator();
AbsoluteLayout.SetLayoutFlags(_activityIndicator, AbsoluteLayoutFlags.PositionProportional);
AbsoluteLayout.SetLayoutBounds(_activityIndicator, new Rectangle(.5,.5,-1,-1));
_layout.Children.Add(_activityIndicator);
}
async void UpdateData()
{
_activityIndicator.IsRunning = true;
this.Data = GetData();
_activityIndicator.IsRunning = false;
}
}
在InitializeControl中,我们首先初始化一个布局,在本例中为AbsoluteLayout,然后创建一个新的ActivityIndicator。我们正在使用AbsoluteLayout.Set设置AbsoluteLayout.LayoutFlags和AbsoluteLayout.LayoutBounds。。。这些方法是附加属性的设置器,请参阅。最后,我们将ActivityIndicator添加到AbsoluteLayout
UpdateData方法是一种组合方法,用于显示更新视图数据时如何使用ActivityIndicator。我们首先在ActivityIndicator上设置IsRunning以显示它,然后获取数据,最后取消设置IsRunning以隐藏“Activity”没有XAML意味着什么。你已经看到了什么样的景色?你是用WPF还是UWP开发的?哎呀,我忘了描述它了。我正在为Android、iOS和UWP使用xamarin.forms制作一个跨平台应用程序。我不知道它是否正确,但我正在基于C创建我的视图。是的,在XAML中可以执行的任何操作都应该可以在C中执行。您只需将其添加到在C中创建的布局中,然后在适当时触发它。