簡體   English   中英

C#中的XAML數據綁定

[英]xaml databinding in c#

我很確定基於我正在模仿的示例代碼看起來正確,但是運行程序時組合框為空。 我在這里做錯了什么?

xaml:

 <ComboBox Grid.Column="1"  Width="200" Height="20"  
           x:Name="cBox" 
           ItemsSource="{Binding DummyClassCollection}" 
           DisplayMemberPath="DisplayValue" />

背后的代碼:

 public partial class PlayerPromptPage : Page
    {
        public PlayerPromptPage()
        {
            InitializeComponent();           
        }                

        public ObservableCollection<DummyClass> DummyClassCollection {
            get {
                return new ObservableCollection<DummyClass>
                {
                    new DummyClass{DisplayValue = "Item1", Value = 1},
                    new DummyClass{DisplayValue = "Item3", Value = 3},
                    new DummyClass{DisplayValue = "Item2", Value = 2},
                    new DummyClass{DisplayValue = "Item4", Value = 4},
                };
            }
        }
    }


    public class DummyClass
    {
        public int Value { get; set; }
        public string DisplayValue { get; set; }
    }

您需要為頁面設置DataContext
這可以在構造函數中輕松完成:

public PlayerPromptPage()
{
    InitializeComponent();           
    DataContext = this;
}

另外,您可以在XAML中設置DataContext

<Window  
    ...
    DataContext="{Binding RelativeSource={RelativeSource Self}}"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM