0
내 WPF 프로젝트에서 DataGrid의 특정 필드에 IValueConverter를 사용하려고합니다. 데이터가 도착하면 DataGrid가 채워지더라도 변환기가 호출되지 않는다는 것을 알게되었습니다.DataGrid 변환기가 호출되지 않았습니다.
<UserControl.Resources>
<sol:RfidConverter x:Key="rfidConverter" />
</UserControl.Resources>
...
<DataGrid AutoGenerateColumns="False" Name="TagGrid" VerticalAlignment="Stretch" ItemsSource="{Binding}">
<DataGrid.Columns>
<DataGridTextColumn IsReadOnly="True" Header="Tag ID" Width="200" Binding="{Binding Rfid, Converter={StaticResource rfidConverter}}"></DataGridTextColumn>
<DataGridCheckBoxColumn Header="Delete" Width="Auto" Binding="{Binding ToDelete}"></DataGridCheckBoxColumn>
</DataGrid.Columns>
</DataGrid>
그리고 C#으로 :
// Tags is an ObservableCollection<Tag>
TagGrid.DataContext = a.GetActiveItem<Project>().Tags;
그리고 내 변환기의 코드 :
나는 다음과 같은 코드가 내가 쉽게 답이 왜 있다고 생각
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string val = ((Int64)value).ToString("x").PadLeft(8, '0');
return val;
}
을 내 변환기가 호출되지 않습니다. "string val = ..."으로 시작하는 줄에 중단 점을 설정하고 내 DataGrid에 빈 항목이 추가 되더라도 중단 점에 결코 도달하지 않습니다. 이것은 내 첫 번째 WPF 프로젝트입니다. 도움을 많이 주시면 감사하겠습니다. 감사!
글쎄, 그게 다야. 대단히 감사합니다. – user2434237
@ bogza.anton,이 질문을 답변으로 설정할 수 있도록 답변에 의견을 추가하십시오. 향후 사용자를 돕기 위해 좀 더 자세한 설명을 추가 할 수 있다면 감사하겠습니다. 많은 감사합니다. – Sheridan