【问题标题】:Winrt IValueConverter on a GridView itemGridView 项上的 Winrt IValueConverter
【发布时间】:2013-03-26 14:52:11
【问题描述】:

我有一个ObservableCollection<TimeSpan> Laps,我将它数据绑定到一个gridview。这按预期工作,但我需要应用转换器来设置 TimeSpan 的格式:

在我的资源中:

<utils:TimeToStringConverter x:Key="myConverter"/>

我的网格视图:

<GridView HorizontalAlignment="Left" Height="278" Margin="78,220,0,0" VerticalAlignment="Top" Width="1278" ItemsSource="{Binding model.Laps}" />

我有以下转换器,我想将其应用于 Winrt 中的 GridView / ListView 的项目:

public class TimeToStringConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        TimeSpan t = (TimeSpan) value;

        return t.ToString(@"hh\:dd\:ss\.fff");

    }

    public object ConvertBack(object value, Type targetType, object parameter, string language)
    {
        throw new NotImplementedException();
    }
}

我不知道如何让转换器工作,当我将它应用于GridView 时,它正在寻找我转换一个 Observable 集合而不仅仅是一个 TimeSpan 项目。我应该在这里做什么?

问候

【问题讨论】:

    标签: c# gridview windows-runtime ivalueconverter


    【解决方案1】:

    你需要类似的东西

    <GridView
        ...>
        <GridView.ItemTemplate>
            <DataTemplate>
                <TextBlock
                    Text="{Binding Converter={StaticResource myConverter}}" />
            </DataTemplate>
        </GridView.ItemTemplate>
    

    【讨论】:

    • 宾果游戏。谢谢你。我第一次尝试这个,假设它是错误的,意识到它不是给一个 TimeSpan 对象给 Convert 它实际上是在奇怪地输入一个字符串。我考虑到了这一点,它奏效了。
    【解决方案2】:

    使用下面的修改行

    我刚刚修改了项目来源,如下所示

    ItemsSource="{Binding model.Laps,Converter={StaticResource myConverter}}"
    
    <GridView HorizontalAlignment="Left" Height="278" Margin="78,220,0,0" VerticalAlignment="Top" Width="1278" ItemsSource="{Binding model.Laps,Converter={StaticResource myConverter}}" />
    

    【讨论】:

    • 他的场景应该是 {StaticResource myConverter}。
    • “演员表无效”。它正在尝试转换它出现的 observablecollection,而不是 TimeSpan。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-04
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多