如何在Xaml中设置TimeSpan

时间:2013-09-12 05:41:17

标签: silverlight silverlight-4.0 silverlight-5.0

我无法在我的依赖项对象上从xaml设置TimeSpan类型的属性,并且正在寻找是否有办法让它工作。

Xaml: <local:MyDependencyObject Time="00:00:05"/>

Time是TimeSpan类型的依赖项属性。 请告诉我如何在xaml中设置类型(TimeSpan)的依赖项属性。

2 个答案:

答案 0 :(得分:1)

TotalMinutesDouble,但D format specifier仅支持Int32等整数类型。格式字符串(例如{}{0:D1} h {1:D1} min ({2} min))应该可以使用。

尝试这种方式:

 <TextBlock>
        <TextBlock.Text>
            <MultiBinding StringFormat="{}{0:D2}:{1:D2}">
                <Binding Path="MyTime.Hours" />
                <Binding Path="MyTime.Minutes" />
            </MultiBinding>
        </TextBlock.Text>
    </TextBlock>

答案 1 :(得分:0)

我是从代码背后做的。

public partial class MainPage : UserControl
{
    public MainPage()
    {
        InitializeComponent();

        MessageBox.Show(IsSpinning.ToString());

    }
    public static readonly DependencyProperty IsSpinningProperty =
DependencyProperty.Register(
"IsSpinning", typeof(TimeSpan),
typeof(TimeSpan), null
);

    public TimeSpan IsSpinning
    {
        get { return (TimeSpan)GetValue(IsSpinningProperty); }
        set { SetValue(IsSpinningProperty, value); }
    }
}