【发布时间】:2021-04-14 12:33:56
【问题描述】:
我正在尝试实现一个自定义控件(我称之为 DataGrid),我选择从Selector 派生它。在 cppwinrt 中,我写了一些这样的
struct DataGrid : SelectorT<DataGrid>
{
}
此代码无法编译。事实上,在任何随附的 Windows.UI.Xaml.Controls.Primitives.h 文件中都没有这种名为 SelectorT 的结构。我检查了 SDK (19041) 附带的 winmd 文件,发现 Selector 是 Composable (具有 ComposableAttribute 属性),所以,SelectorT 应该已经生成,我错过了什么?非常感谢!
【问题讨论】:
-
看来
Selector没有声明任何构造函数(在winmd 中)。这意味着没有任何工厂。对于收件箱控件,如ListBox(派生自Selector),我相信它直接使用构造函数。 IE。在文档中的同一编译单元中创作和消费的情况。所以我相信我不能从外部推导出Selector。