0

ObservableCollection<TimeSpan> Lapsグリッドビューにデータバインディングしているものがあります。これは期待どおりに機能しますが、コンバーターを適用して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、TimeSpanアイテムだけでなく、Observableコレクションを変換する方法を探しています。ここで何をすればいいですか?

よろしく

4

2 に答える 2

1

あなたはのようなものが必要です

<GridView
    ...>
    <GridView.ItemTemplate>
        <DataTemplate>
            <TextBlock
                Text="{Binding Converter={StaticResource myConverter}}" />
        </DataTemplate>
    </GridView.ItemTemplate>
于 2013-03-26T16:15:09.067 に答える
-1

以下の変更された行を使用します

以下のようにアイテムソースを変更しました

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}}" />
于 2013-03-26T14:58:13.423 に答える