2009-10-15 180 views
2

我试图用一些数据绑定组合框。 的问题是,我已经在组合框中像这样的数据:WPF组合框绑定

      <ComboBox> 
           <ComboBoxItem>Item 1</ComboBoxItem> 
           <ComboBoxItem>Item 2</ComboBoxItem> 
           <ComboBoxItem>Item 3</ComboBoxItem> 
           <ComboBoxItem>Item 4</ComboBoxItem> 
           <ComboBoxItem>Item 5</ComboBoxItem> 
          </ComboBox> 

当与组合框的形式加载我有一个资源装载有,我想将其绑定到这个组合的int框。 因此,如果该int是1我想要组合框显示项目1等,当我更改组合框的项目,我想相应地更新该int。

有没有办法将这个资源绑定到组合框来存档?

预先感谢您

回答

7

这里是如何做到这一点的完整XAML样本:

<Window x:Class="WpfApplication1.Window1" 
    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" 
    Title="Window1"> 
    <Window.Resources> 
     <sys:Int32 x:Key="TheIndex">2</sys:Int32> 
    </Window.Resources> 
    <ComboBox SelectedIndex="{Binding Source={StaticResource TheIndex}, Mode=OneWay}"> 
     <ComboBoxItem>One</ComboBoxItem> 
     <ComboBoxItem>Two</ComboBoxItem> 
     <ComboBoxItem>Three</ComboBoxItem> 
     <ComboBoxItem>Four</ComboBoxItem> 
    </ComboBox> 
</Window> 

注意以下几点:

  • sys XML命名空间被声明为一个映射到System CLR命名空间mscorlib程序集
  • SelectedIndexBinding设置为OneWay,因为它默认为TwoWay,直接绑定到一个资源时,这是没有意义的
+0

您好肯特 感谢您的回复 我fearly新的WPF程序,我需要一些对你发布的snipset更加满意。 如何声明 2 以及这是如何绑定到我的资源? 再次感谢您 – Taonias 2009-10-16 08:18:52

+0

@Taonias:没问题。我已经使用完整的工作示例更新了我的帖子。 – 2009-10-16 08:59:34