Xaml UWP-将向量绑定到c+中的组合框+;

Xaml UWP-将向量绑定到c+中的组合框+;,xaml,vector,combobox,uwp,c++-cx,Xaml,Vector,Combobox,Uwp,C++ Cx,我的UI上有一个组合框。在我的网络类中,我有一个接收udp数据包并从中获取IP地址的方法。我采用哪种数据类型将地址保存为字符串(Vector、IVector?)。我如何将这个包含地址的对象连接到UI中的combobox——这样每个地址都会在combobox中动态显示。 我用C++来实现网络类和XAML+C++的UI。为了避免混淆,我正在使用Visual Studio 2017中的UWP-XAML-C++模板 我采用哪种数据类型将地址保存为字符串(Vector、IVector?) 是,可以用作到的

我的UI上有一个组合框。在我的网络类中,我有一个接收udp数据包并从中获取IP地址的方法。我采用哪种数据类型将地址保存为字符串(Vector、IVector?)。我如何将这个包含地址的对象连接到UI中的combobox——这样每个地址都会在combobox中动态显示。 我用C++来实现网络类和XAML+C++的UI。为了避免混淆,我正在使用Visual Studio 2017中的UWP-XAML-C++模板

我采用哪种数据类型将地址保存为字符串(Vector、IVector?)

是,可以用作到的集合绑定。有关C++/CX集合的更多详细信息,请参考

我如何连接这个有地址的对象

为此,我们需要使用

例如,假设有一个
网络
类包含
IpAddress
属性,如下所示:

MainPage.xaml.h中的代码

public ref class MainPage sealed
{
public:
    MainPage();
private:
    void btnbinding_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
};

public ref class network sealed
{
public:
    property Platform::String^ IpAddress;
};
然后我们可以将
网络
集合(向量)绑定到
组合框
,如下所示:

XAML代码

<ComboBox x:Name="combo" >
    <DataTemplate>
        <TextBlock Text="{Binding IpAddress}"></TextBlock>
    </DataTemplate>
</ComboBox>

代码隐藏

void CombboxC::MainPage::btnbinding_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
    Platform::Collections::Vector<network^>^ items = ref new Platform::Collections::Vector<network^>();  
    network^ onenet = ref new network();
    onenet->IpAddress = "Test";
    items->Append(onenet);
    combo->ItemsSource = items; 
}
void CombboxC::MainPage::btnbinding_单击(平台::对象^sender,Windows::UI::Xaml::路由目标^e)
{
平台::集合::向量^items=ref新平台::集合::向量();
网络^onet=ref新网络();
onenet->IpAddress=“测试”;
项目->附加(onenet);
组合->项目资源=项目;
}

这不是我的意思,我在网络类中有一个循环,用于用地址填充向量。我不希望它被填充在后面的代码中。我最大的问题是如何在C++中生成一个全局向量,它由主UI类读取。我知道如何在爪哇/C中完成它,但是我在C++中没有创建全局向量。