在我的用戶控制設置組合框的的SelectedItem,我如下定義的組合框:如何通過代碼
<GroupBox x:Name="stopEventGroup" Header="Test">
<ComboBox x:Name="stopEventCombobox"
ItemsSource="{Binding}"
DisplayMemberPath ="EventVariableComboxItem"
SelectedItem="StopEventVariable"/>
</GroupBox>
StopEventVariable是我對象(日誌)的財產。在代碼的一部分,我的SelectionChanged事件綁定到一個處理方法:
stopEventCombobox.SelectionChanged += stopEventCombobox_SelectionChanged;
而且內部處理程序,我把它分配給我的對象的屬性。
private void stopEventCombobox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
selectedVar = (LogPublicVariableView)stopEventCombobox.SelectedItem;
if ((log != null) && (selectedVar != null))
{
log.StopEventVariable = selectedVar.ExposedVariable;
}
}
在此構造函數的構造函數中,我綁定組合框的父級的數據上下文:
stopEventGroup.DataContext = pvVarList;
到現在爲止,一切都可以正常工作。現在我的問題是。在我的對象(日誌)存儲值後,下次顯示此用戶控制器時,我希望組合框自動顯示此值,我嘗試在用戶控制器的構造函數中的以下代碼中執行此操作,但無法工作:
stopEventCombobox.SelectedItem = log.StopEventVariable;
分配後,stopEventCombobox.SelectedItem仍爲空。
是的,StopEventVariable是一個屬性。我在代碼部分綁定了DAtaContext。 – user2165899 2013-03-27 07:46:34
@ user2165899顯示更多XAML。什麼是你的窗口的DataContext? – 2013-03-27 07:55:51