DataGrid
에 DataGridComboBoxColumn을 채우고 문자열 목록의 Values 값으로 채 웁니다.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;
간단한 일반 목록을합니다. 문제는 그리드 데이터 상태 열 값이 기본적으로 공백 (이미 저장된 값을 표시하지 않음)입니다. 내가 셀을 클릭하면 콤보가 값과 함께 표시되지만 값을 선택하면 셀 또한 표시되지 않습니다.
제 설명이 충분히 명확 해 주시기 바랍니다.
이 질문에 대한 대답은 : http://stackoverflow.com/q/8346869/920384 – punker76
해당 예제에는 코드가 없으므로 xaml을 통해서만 점들을 연결할 수 없습니다 – CodeMe
더 많은 코드를 보지 않고도 말하기가 어렵습니다 ,하지만 당신의'MyClass.Status'가 문자열이 아니거나 바인딩이 올바르지 않다고 추측합니다. ComboBox가 DataItem에 바인딩되는 시점은 언제입니까? XAML에서는 어디에서도 볼 수 없습니다. 그리고 당신은 그것을 ItemsSource로 채우고 있습니까? 나는 당신이'ItemsSource'에 대한 바인딩을 가지고 있기 때문에 혼란스럽고 코드 숨김으로 설정하는 것처럼 보입니다. – Rachel