2009-12-01 73 views

回答

13
<Window 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:sys="clr-namespace:System;assembly=mscorlib"> 
    <Window.Resources> 
     <x:Array x:Key="Integers" Type="{x:Type sys:Int32}"> 
      <sys:Int32>0</sys:Int32> 
      <sys:Int32>1</sys:Int32> 
      <sys:Int32>2</sys:Int32> 
     </x:Array> 
    </Window.Resources> 
    <ComboBox ItemsSource="{Binding Source={StaticResource Integers}}" /> 
</Window> 
1

是:

<Window x:Class="IntArrayItemsSource.Window1" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
Title="Window1" Height="300" Width="300"> 
<Grid> 
    <ComboBox ItemsSource="{Binding}"/> 
</Grid> 
</Window> 


namespace IntArrayItemsSource { 
/// <summary> 
/// Interaction logic for Window1.xaml 
/// </summary> 
public partial class Window1: Window { 
    public Window1() { 
     InitializeComponent(); 
     this.DataContext = new int[] { 1, 2, 3, 4, 5, 6, 7 }; 
    } 
} 
} 
3

我也有類似的問題,結合從視圖模型到ComboBox未來的整數數組。 這裏有什麼對我有用。

這裏是XAML,在那裏我們的財產ArrayOfIntegers綁定到ComboBox

<Window x:Class="POpUpWindow.comboBox" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"    
     Title="comboBox" Height="300" Width="300"> 
    <Grid> 
     <ComboBox x:Name="combox" IsReadOnly="True" 
        VerticalAlignment="Center" SelectedIndex="0" 
        ItemsSource="{Binding ArrayOfIntegers}"> 
     </ComboBox> 
    </Grid> 
</Window> 

這裏ItemsSource被後面的代碼,並且其具有性能視圖模型ArrayOfIntegers

public partial class comboBox : Window 
{ 
    private ViewModel mViewModel = new ViewModel(); 

    public comboBox() 
    { 
     InitializeComponent(); 
     this.DataContext = mViewModel; 
    } 
} 

public class ViewModel : ViewModelBase 
{ 
    public ViewModel() 
    { 
     ArrayOfIntegers = new int[]{4, 6, 9}; 
    } 

    private int[] mArrayOfIntegers = new int[3]; 
    public int[] ArrayOfIntegers 
    { 
     get { return mArrayOfIntegers; } 
     set { mArrayOfIntegers = value; } 
    } 
} 
相關問題