我正在用C++和XAML编写Windows通用应用程序(商店应用程序),并且创建了要向其中添加项目的listview。在对项目进行硬编码时,这可以很好地工作,但是一旦我想通过循环添加它们,就不再起作用了。我得到了错误

cannot convert argument 1 from 'const char *' to 'Platform::Object ^'

谁能告诉我我在做什么错?谢谢

我的代码:
/* This works */
myListView->Items->Append("Hello, world!");

/* This doesn't work */
const char* strarray[] = { "Hello", "World", "Awesome" };
for (int i = 0; i < sizeof(strarray); i++) {
    myListView->Items->Append(strarray[i]);
}

最佳答案

您正在为字符串数组使用基本数据类型

const char* strarray[]

因此,函数xxx->Items->Append()可能需要接收托管数据类型,例如:
array<String^>^ strarray = { "Hello", "World", "Awesome" };

关于c++ - 无法添加ListViewItem-Windows通用应用程序C++,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33940137/

10-12 22:36