我有以下类(class):
using Cirrious.MvvmCross.Binding.BindingContext;
using Cirrious.MvvmCross.Droid.Views;
using Cirrious.MvvmCross.Droid.Fragging;
using Cirrious.MvvmCross.Droid.Fragging.Fragments;
public class DifficultyItemFragment : MvxFragment
{
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
var ignored = base.OnCreateView(inflater, container, savedInstanceState);
return this.BindingInflate(Resource.Layout.DifficultyItemFragment, null);
}
}
我收到以下错误:
Error 8 ...'QuickShift.Android.Views.DifficultyItemFragment' does not contain a definition for 'BindingInflate' and no extension method 'BindingInflate' accepting a first argument of type 'QuickShift.Android.Views.DifficultyItemFragment' could be found (are you missing a using directive or an assembly reference?)
我查看了 MvvmCross 源代码,BindingInflate 确实存在于 BindingContext 命名空间中。
我是不是错过了什么??我引用了所有必要的库,包括 Xamarin.Android.Support.v4
更新:
我在 VS 2013 中创建了一个示例项目来说明这个问题。您会注意到在 Fragment1.cs 中存在同样的问题:
最佳答案
BindingInflate
其实就是一个扩展方法。您需要导入正确的命名空间(对于版本 3.5.x)。
using Cirrious.MvvmCross.Binding.Droid.BindingContext;
对于 4.x 版本,MvvmCross 重新组织了命名空间。正确的导入是:
using MvvmCross.Binding.Droid.BindingContext;
编辑:添加版本信息以回答并包含 v4.x 的更新命名空间
关于c# - Visual Studio 无法识别 MvxFragment 的 BindingInflate 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21914809/