2012-10-20 110 views
0

國家名單我有一個WPF組合框WPF組合框結合在vb.net

<ComboBox x:Name="tCountry" HorizontalAlignment="Left" Margin="96,151,0,0" VerticalAlignment="Top" Width="146" TabIndex="6"/> 

,我該Unicode提取一些XML數據(CLDRs)

<?xml version="1.0" encoding="UTF-8" ?> 
<country> 
    <territory type="AC">Ascension Island</territory> 
    <territory type="AD">Andorra</territory> 
    <territory type="AE">United Arab Emirates</territory> 
    <territory type="AF">Afghanistan</territory> 
    <territory type="AG">Antigua and Barbuda</territory> 
    <territory type="AI">Anguilla</territory> 
    <territory type="AL">Albania</territory> 
    .... 
</country> 

怎樣纔可以有因此組合框中填入了這些國家,以便我們可以在提交vb.net中的數據時提取2個字母的ISO代碼。

回答

0

您可以使用XmlDataProvider從XML文件中檢索字段:

<XmlDataProvider x:Key="xml" Source="data.xml" /> 

然後使用SelectedValuePath屬性使用XPath綁定:

<ComboBox ItemsSource="{Binding Source={StaticResource xml},XPath=/country/territory}" 
    SelectedValuePath="{Binding [email protected]}" /> 

現在使用SelectedValue獲得縮寫(或使用綁定的話)。

private void combo_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    MessageBox.Show((string)(sender as ComboBox).SelectedValue); 
}