转换器采用多个参数 [英] Converter With Multiple Parameter

查看:101
本文介绍了转换器采用多个参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

任何人都知道如何使用转换器在Windows Phone 7应用程序的多个参数。

Anyone know how to use converter with Multiple parameter in Windows Phone 7 Application.

在此先感谢。

推荐答案

转换器始终贯彻的的IValueConverter 。这意味着调用转换 ConvertBack 传递一个单个附加参数。该参数是从XAML中提取。

Converters always implement IValueConverter. That means a call to Convert or ConvertBack passes a single additional parameter. That parameter is extracted from the XAML.

作为亚太区首席技术官Matt帕特尔指出没有什么可以阻止你把多个值到参数,只要你有一个分隔符他们后来分离出来,,但作为划定XAML则不能使用逗号!

As Hitesh Patel suggests there is nothing to stop you putting more than one value into the parameter, so long as you have a delimiter to separate them out later, but you cannot use a comma as that delimits the XAML!

<TextBlock Text="{Binding Path=ReleaseDate, Mode=OneWay,
                        Converter={StaticResource MyConverter}, 
                        ConverterParameter=Param1|Param2}}" />



转换



Converter

public object Convert(object value, Type targetType, object parameter,
    System.Globalization.CultureInfo culture)
{
    string parameterString = parameter as string;
    if (!string.IsNullOrEmpty(parameterString))
    {
        string[] parameters = parameterString.Split(new char[]{'|'});
        // Now do something with the parameters
    }
}

注意,我没有检查,看看是否一个管道|字符是在XAML中有有效的(应该是),但如果不只是选择不冲突的另一个字符

一个窍门易趣用于在URL中使用,几年前,在与QQ的URL来界定的数据。双-Q不是天然存在于文本数据。如果您遇到困难的分隔符的文本将避免编码问题只是用QQ ......这不会拆分工作,虽然(它需要单个字符,但很高兴知道):)

A trick eBay used to use in urls, years ago, was to delimit data in the URL with QQ. A double-Q does not naturally occur in text data. If you ever get stuck for a text delimiter that will avoid encoding issues just use QQ... This will not work with split though (which requires single characters, but nice to know) :)

这篇关于转换器采用多个参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆