我需要Silverlight 4組合框的SelectedValue屬性作爲DependencyPproerty通過反射,但我不知道如何做到這一點。ComboBox SelectedValue通過反射作爲DependencyProperty
myComboBox.GetType().GetFields()
回報DependencyProperties但只有四個組合框的屬性返回和的SelectedValue是不是其中之一。
myComboBox.GetType().GetProperty("SelectedValue")
獲取屬性,但它是一個System.Object而不是一個DependencyObject。
我最終試圖去控制的綁定,這需要一個DependencyProperty不是一個對象。
編輯:
這是在行爲發生的事情,我不知道控制是什麼,我有一個ComboBox控件的工作現在。我所擁有的是從XAML傳遞的字符串。在WPF中,我可以使用mySource="{x:Static ComboBox.SelectedValueProperty}"
作爲DependencyProperty,但Silverlight在XAML中沒有x:Static
。所以我試圖將mySource="SelectedValue"
轉換爲DependencyProperty。
其實這是在行爲發生的事情,我不知道控制是什麼,我現在正在使用ComboBox控件。我所擁有的是從XAML傳遞的字符串。在WPF中,我可以使用mySource =「{x:Static ComboBox.SelectedValueProperty}」作爲DependencyProperty,但Silverlight在XAML中沒有x:Static。所以我試圖將mySource =「SelectedValue」轉換爲DependencyProperty。 – strattonn 2010-12-15 15:30:15
看起來不錯,唯一的問題是GetProperty(「SelectedValueProperty」)返回null,GetProperty(「SelectedValue」)返回的對象不是DependencyProperty。 (GetFields需要添加「屬性」。) – strattonn 2010-12-15 15:56:53
這是一個錯誤。代碼更新爲使用'GetField'代替。 – decyclone 2010-12-15 16:00:11