gpt4 book ai didi

c# - 使用 MonoMac 实现 NSOutlineViewDataSource

转载 作者:行者123 更新时间:2023-12-03 17:15:13 25 4
gpt4 key购买 nike

我正在尝试为 NSOutlineView 实现数据源。问题是我不知道从 outlineView:child:ofItem: 返回什么类型的对象。

当前代码如下所示:

[Export("outlineView:child:ofItem:")]
public NSObject childOfItem(NSOutlineView outline, int child, NSObject item)
{
return new MyItem();
}

使用我的项目:

public class MyItem : NSObject
{}

编辑:使用此代码,我在返回 MyItem 后立即收到 InvalidCastException

最佳答案

如果您从 NSOutlineViewDataSource 继承新类型那么您不应该重新导出outlineView:child:ofItem:根据您自己的方法选择器。相反,你应该做的是覆盖 GetChild已经导出此选择器的方法,例如

public overrride NSObject GetChild (NSOutlineView outlineView, int childIndex, NSObject ofItem)
{
return new MyItem ();
}

注意:这可能没有帮助,因为我还没有尝试过(我主要做 MonoTouch 的事情),但请检查您可能在应用程序中重新定义/导出的其他选择器(看看您是否不应该覆盖 -从您继承的基类中获取它们)。

关于c# - 使用 MonoMac 实现 NSOutlineViewDataSource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8843553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com