我可以使用SL5 RC标记扩展的绑定吗?

时间:2011-09-14 08:56:45

标签: silverlight-5.0

我可以在SL5 RC标记扩展中使用绑定吗?

这是我的XAML:

...
    <TextBlock>
                <TextBlock.Text>
                   <local:LengtherMarkupExtension Test="{Binding ElementName='MyTextBox', Path='Text'}" />
                </TextBlock.Text>
            </TextBlock>
...

和ME:

public class LengtherMarkupExtension: FrameworkElement,
        IMarkupExtension<string>
    {
        public LengtherMarkupExtension()
        {
            //this.DataContext = this;
        }


        public static readonly DependencyProperty TestProperty =
            DependencyProperty.Register("Test",
                typeof(string),
                typeof(LengtherMarkupExtension),
                new PropertyMetadata("DefaultValue",
                    (o, e) => 
                    {
                        System.Diagnostics.Debugger.Break();
                    }));


        public string Test
        {
            get { return (string)this.GetValue(LengtherMarkupExtension.TestProperty); }
            set { this.SetValue(LengtherMarkupExtension.TestProperty, value); }
        }


        public string ProvideValue(IServiceProvider serviceProvider)
        {
            return this.Test.Length.ToString();
        }
    }

我的ME的测试属性不会通过绑定设置,无论如何,我做错了什么?

1 个答案:

答案 0 :(得分:0)

在粘贴过程中,XAML解析器会调用标记扩展,此时无法解析绑定。根据您的示例,您可能希望返回绑定。