WPF绑定ItemsSource到静态方法?

Kar*_*lta 11 methods wpf binding itemssource

我在名为"Article"的类中有以下静态方法:

public static ObservableCollection<Article> GetObservableCollection() { ... }
Run Code Online (Sandbox Code Playgroud)

我想将它直接绑定到ComboBox的ItemsSource属性,但是在XAML而不是代码中,我找不到正确的语法.

它应该看起来像我想的那样(EmacGbscCore是包含Article对象的程序集):

ItemsSource="{Binding Source={x:Static EmacGbscCore:Article.GetObservableCollection}}"
Run Code Online (Sandbox Code Playgroud)

提前感谢您的帮助.

Tho*_*que 25

您需要ObjectDataProvider在资源中声明:

<ObjectDataProvider x:Key="data"
                    ObjectType="{x:Type EmacGbscCore:Article}"
                    MethodName="GetObservableCollection" />
Run Code Online (Sandbox Code Playgroud)

并使用它作为绑定的来源:

ItemsSource"{Binding Source={StaticResource data}}"
Run Code Online (Sandbox Code Playgroud)