Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/135.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 从C+填充列表框+;使用网格_C++_Xaml_Winapi_Windows Embedded Compact - Fatal编程技术网

C++ 从C+填充列表框+;使用网格

C++ 从C+填充列表框+;使用网格,c++,xaml,winapi,windows-embedded-compact,C++,Xaml,Winapi,Windows Embedded Compact,具体来说,如何获取添加到的元素/模型,并使用它们在XAML列表框中生成行/列 我自己也尝试过这样做,但是我的列表框仍然是空的,尽管我的集合中添加了元素 注意:此菜单是为使用VS2008和Silverlight for Windows Embedded的Windows Embedded Compact 7设备设计的,因此WPF中的许多可用功能不适用于此环境。 我所做的是初始化要在列表框中显示的元素的模型,如下所示: DispCh->Initialize(ChannelNum,ChannelN

具体来说,如何获取添加到的元素/模型,并使用它们在XAML列表框中生成行/列

我自己也尝试过这样做,但是我的列表框仍然是空的,尽管我的集合中添加了元素

注意:此菜单是为使用VS2008和Silverlight for Windows Embedded的Windows Embedded Compact 7设备设计的,因此WPF中的许多可用功能不适用于此环境。

我所做的是初始化要在列表框中显示的元素的模型,如下所示:

DispCh->Initialize(ChannelNum,ChannelName,InputType,DispRange_Low,DispRange_High,MovingAvgFilter,EngUnit);
通过用中的值替换这些变量,可以定义在列表框的每列中显示的内容(这意味着列表框的1行将包含6列;显示范围高和低在1列中)

现在,我将我的元素的这个模型添加到集合中,如下所示:

DispCh->Initialize(ChannelNum,ChannelName,InputType,DispRange_Low,DispRange_High,MovingAvgFilter,EngUnit);
pMainPage->m_pDispChModelCollection->Add(DispCh)

这很好,因为当我在添加后检查集合计数时,它会增加

现在,我相信我已经正确地进行了绑定,以获取集合并将其转换为listbox。为此,我执行以下操作:

XRValue value;
value.vType = VTYPE_PROPERTYBAG;
value.pPropertyBagVal = m_pDispCh_Model;
m_pReviewModeDispCh->m_pReviewMode_ChList->SetDataContext(&value);
m_pDispCh_Model->Set_ChannelCollection(m_pDispChModelCollection);
TBoundPointerProperty<IXREnumerable> m_pRevChList;
hResult = RegisterBoundProperty(L"ReviewModeDispChList", m_pRevChList);
其中,
m_pDispCh_Model
是包含所有xaml初始化和绑定的模型类,
m_pReviewModeDispCh
是xaml菜单的类定义,
m_pReviewMode_ChList
是xaml列表框的IXRPT,和
Set\u ChannelCollection
获取
m\u pDispChModelCollection
并将其传递给
m\u pRevChList
,如下所示:

XRValue value;
value.vType = VTYPE_PROPERTYBAG;
value.pPropertyBagVal = m_pDispCh_Model;
m_pReviewModeDispCh->m_pReviewMode_ChList->SetDataContext(&value);
m_pDispCh_Model->Set_ChannelCollection(m_pDispChModelCollection);
TBoundPointerProperty<IXREnumerable> m_pRevChList;
hResult = RegisterBoundProperty(L"ReviewModeDispChList", m_pRevChList);
TBoundPointerProperty m_pRevChList;
hResult=RegisterBoundProperty(L“ReviewModeDispChList”,m_pRevChList);

现在,我可以发布代码,显示XML菜单中的内容,定义XAML类的C++代码,元素模型的C++类,以及我使用这些类方法的C++代码,但是它不会跟随,因此,<强>我想知道我所做的步骤的想法是否正确,只要我提供的代码,或者至少如果有人指出了C++代码生成ListBox网格的正确方向。