当通过标记扩展 x:Arguments
传递参数时到 docs 指定的非默认构造函数, 我可以看到具体数据类型的使用,例如 x:Int32
或 x:String
,但是 x:Object
的用例是什么? ?更重要的是,要使用它,标签之间应该放什么? <x:Object> ??? </x:Object>
在整数或字符串的情况下,很自然地将它们视为变量赋值,然后将变量传递给构造函数。但在 Object
的情况下,这样的变量通常是由另一个用户定义的类构造的,那么如何指定要创建什么类?
最佳答案
x:对象
x:Object 原语对应于 Object。此原语通常不用于应用程序标记,但可能对某些场景有用,例如检查 XAML 类型系统中的可分配性。您可以用作参数。
看看 Xamarin documentation on Resource Dictionaries有关如何使用资源的 x:Key 属性的完整说明。
Each resource has a key that is specified using the x:Key attribute, which gives it a descriptive key in the ResourceDictionary.
你可以像下面这样使用它:
<local:MockFactory >
<x:Arguments>
<x:Array Type="{x:Type x:Object}">
<x:String>Foo</x:String>
<x:String>Bar</x:String>
</x:Array>
</x:Arguments>
</local:MockFactory>
你可以找到一个相关的例子here
关于c# - 如何使用 x :Object and when?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46845405/