在Xaml中声明元组

时间:2010-10-12 19:53:52

标签: c# wpf xaml tuples

有没有办法在xaml中声明一个元组,以便我可以将它用作转换器参数?

2 个答案:

答案 0 :(得分:1)

不直接。

类似问题有一些有趣的解决方案:

通常,您必须创建自己的非泛型类型并改为使用它。

示例

有关:

Tuple<string, int, double>

你可以创建一个类:

namespace Models
{
    class MyData
    {
        public MyString { get; set; }
        public MyInt { get; set; }
        public MyDouble { get; set; }
    }
}

然后向XAML添加名称空间:

xmlns:models="clr-namespace:Models"

然后根据需要创建您的实例:

<models:MyData MyString="someString" MyInt="123" MyDouble="0.1" />

答案 1 :(得分:-1)

您无需在XAML中声明它。您可以使用x:Static来分配在代码中声明的ConverterParameter:

<TextBlock Text="{Binding Converter={x:Static local:MyConverter.Default}, ConverterParameter={x:Static local:MySettings.Name}}" />

你正在访问的内容只需要是静态的:

public static class MySettings
{
    public static string Name
    {
        get { return "Test"; }
    }
}