xamarin 无法在.Net Maui中将行为添加到StateView

nzrxty8p  于 2023-05-27  发布在  .NET
关注(0)|答案(1)|浏览(80)

我有一个Xamarin.forms应用程序,我可以在其中添加。一个StateView的行为。现在我正在将项目迁移到.Net Maui。迁移项目后,我不能再添加行为到状态视图。StateView似乎变成了CommunityToolkit中的一个静态类。我该如何解决这个问题?
如何将行为添加到StateView

static void OnAttachBehaviorChanged(BindableObject view, object oldValue, object newValue)
        {
            if (!(view is StateView stateView))
            {
                return;
            }

            bool attachBehavior = (bool)newValue;
            if (attachBehavior)
            {
                stateView.Behaviors.Add(new EntranceTransitionBehavior());
            }
            else
            {
                var toRemove = stateView.Behaviors.FirstOrDefault(b => b is EntranceTransitionBehavior);
                if (toRemove != null)
                {
                    stateView.Behaviors.Remove(toRemove);
                }
            }
        }

但现在在毛伊岛我得到的错误像
“StateView”不包含“Behaviors”的定义,并且找不到接受类型为“StateView”的第一个参数的可访问扩展方法“Behaviors”(是否缺少using指令或程序集引用?
任何帮助都很感激。

ehxuflar

ehxuflar1#

在MAUI中,StateView属于StateContainer,StateView的类型为IList<View>,是可以用作状态模板的View元素。它可能与Xamarin Community Toolkit StateLayout有点不同。
更多信息可以参考.NET MAUI Community Toolkit StateContainer

相关问题