我想在DataGrid
中填充一個DataGridComboBoxColumn,其中包含來自字符串列表的狀態值。DataGridComboBoxColumn不顯示值列表
的XAML看起來像這樣
<DataGridComboBoxColumn Header="Status" >
<DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding}" />
</Style>
</DataGridComboBoxColumn.ElementStyle>
</DataGridComboBoxColumn>
的字符串的代碼是一個簡單的泛型列表
var lstStrings = new List<string>();
lstStrings.Add("New");
lstStrings.Add("Open");
lstStrings.Add("ReOpen");
lstStrings.Add("Closed");
DataGridComboBoxColumn cmbx = grdComments.Columns[1] as DataGridComboBoxColumn;
cmbx.ItemsSource = lstStrings;
格柵數據是一類對象的列表。問題在於網格數據狀態列值默認爲空白(它不顯示已保存的值)。當我點擊單元格的組合顯示的值,但是當我選擇任何值時它也沒有顯示。
我希望我的解釋清楚。
可能dublicate的這個問題:http://stackoverflow.com/q/8346869/920384 – punker76 2011-12-19 11:55:07
這個例子中沒有代碼,所以我無法通過只有xaml連接點 – CodeMe 2011-12-19 12:19:37
很難說,沒有看到更多的代碼,但我猜測你的'MyClass.Status'不是一個字符串,或者綁定不正確。 ComboBox在什麼時候綁定到你的DataItem?我沒有在XAML的任何地方看到它。你在哪裏填充它的ItemsSource?我很困惑,因爲你有一個'ItemsSource'的綁定,並且它看起來像是在代碼隱藏中設置 – Rachel 2011-12-19 13:59:39