バーコード列にフィルターを作成したいと思います。この列には、Eans のリストを文字列に変換するコンバーターがあります。クラスは次のとおりです。
public class EanListToStringConverter : IValueConverter
{
public object Convert(object value, Type targetType,
object parameter, CultureInfo culture)
{
return String.Join("\r", ((List<Ean>)value).Select(ean => ean.Codice));
}
public object ConvertBack(object value, Type targetType,
object parameter, CultureInfo culture)
{
return NotSupportedException();
}
private object NotSupportedException()
{
throw new NotImplementedException();
}
}
したがって、ユーザーがTEXTBOX (またはその他のもの) にバーコードを書き込んで、DataGrid のリストをフィルター処理することが必要です。
<DataGrid HorizontalAlignment="Stretch" SelectedItem="{Binding SelectedArticle}"
Margin="14,89,12,61" VerticalAlignment="Stretch" AutoGenerateColumns="False" x:Name="List">
<DataGrid.Columns>
<DataGridTextColumn Width="100" Binding="{Binding Code}" Header="Code" />
<DataGridTextColumn Width="300" Binding="{Binding Description}" Header="Description" />
<DataGridTextColumn Binding="{Binding Price}" Header="Price" />
<DataGridTextColumn Binding="{Binding Ean, Converter={StaticResource EanListToString}}" Header="Bar Codes" />
</DataGrid.Columns>
</DataGrid>
これはビューモデルです
[Export(typeof(IScreen))]
public class BViewModel : Screen
{
public List<Articolo> List { get; private set; }
public Article SelectedArticle { get; set; }
[Import]
WindowManager WindowManager = new WindowManager();
public BolleViewModel()
{
List = recover.GetArticles();
NotifyOfPropertyChange("List");
}
}
私は何ができますか?ありがとう..