未触发转换器的显示索引

用户7925257

我有数据网格,我将 displayindex 绑定到数据上下文(这无关紧要)。我使用一个转换器,它接受一个字符串参数,它结合了一个字段名和一个 tableID,从中我可以提取该列的订单号(从数据库中),但转换器从未触发,我认为这是因为后备

这是 xaml 行:

<DataGridTemplateColumn  Header="Col1" DisplayIndex="{Binding CarID, Converter={StaticResource FieldNameToIndex}, FallbackValue=0, ConverterParameter=Col1-9}">

这是转换器类:

public class FieldNameToIndex : IValueConverter
{
    public object Convert(object value, Type targetType,
        object parameter, CultureInfo culture)
    {
        string[] data = parameter.ToString().Split('-');
        if(data.Length == 2)
        {
            long val;
            if (!long.TryParse(data[1], out val))
                return 0;

            using (AmethystEntities db = new AmethystEntities())
            {
                string fieldName = data[0];
                Fields mat = db.Fields.Where(m => m.FieldName == fieldName && val == m.TableID).FirstOrDefault();
                if (mat != null)
                    return (mat.DisplayIndex != null ? mat.DisplayIndex : 0);
            }
        }

        return 0;        
    }

    public object ConvertBack(object value, Type targetType,
        object parameter, CultureInfo culture)
    {
        return value;
    }
}
毫米8

创建后,编程方式创建绑定

<DataGrid Loaded="DataGrid_Loaded">
    <DataGrid.Columns>
        <DataGridTemplateColumn x:Name="col1" Header="Col1">
        ...
    </DataGrid.Columns>
</DataGrid>

private void DataGrid_Loaded(object sender, RoutedEventArgs e)
{
    BindingOperations.SetBinding(col1, DataGridColumn.DisplayIndexProperty,
        new Binding("CarID") { Source = this, Converter = new FieldNameToIndex(), FallbackValue = 0 });
}

列被一个接一个地创建,当第一列被创建时,Columns集合中没有其他列DataGrid,因此DisplayIndex只能设置为 0。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用转换器时未触发数据触发

来自分类Dev

集合更新后转换器未触发

来自分类Dev

触发VS转换器

来自分类Dev

触发VS转换器

来自分类Dev

在IsMouseOver触发器中使用时,转换器未调用

来自分类Dev

货币转换器未转换

来自分类Dev

未调用颜色转换器绑定

来自分类Dev

如何在 KeyDown 操作上触发转换器?

来自分类Dev

MvvmCross,平台特定的值转换器未调用

来自分类Dev

RestKit值转换器验证块未调用

来自分类Dev

自定义通用json转换器未调用

来自分类Dev

WPF Multibind转换器未返回值?

来自分类Dev

未选中复选框的值转换器

来自分类Dev

显示值转换器,用于ASP.MVC

来自分类Dev

本地化语言标签以显示名称转换器

来自分类Dev

本地化语言标签以显示名称转换器

来自分类Dev

jsf richtable中的十进制显示转换器

来自分类Dev

带转换器的绑定图像未在WPF中显示

来自分类Dev

日期转换器

来自分类Dev

日期转换器

来自分类Dev

货币转换器

来自分类Dev

转换器只会触发一次,而不是每次标签内容更改时都会触发

来自分类Dev

未使用自定义HTTP消息转换器,未支持的媒体类型为415

来自分类Dev

带有西藏绑定的MVVMCross WPF值转换器未转换?

来自分类Dev

xaml解析器未检测到我的转换器

来自分类Dev

避免转换器绑定

来自分类Dev

转换器的调试标志

来自分类Dev

WPF循环转换器

来自分类Dev

如何创建转换器?