Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WP8.1/WinRT用户控件绑定自绑定依赖项属性_C#_Xaml_Windows Runtime_Windows Phone 8.1 - Fatal编程技术网

C# WP8.1/WinRT用户控件绑定自绑定依赖项属性

C# WP8.1/WinRT用户控件绑定自绑定依赖项属性,c#,xaml,windows-runtime,windows-phone-8.1,C#,Xaml,Windows Runtime,Windows Phone 8.1,我有一个用户控件,它将多个属性传递给一个内部文本块,如下所示: <UserControl x:Name="Root"> <Grid> <TextBlock x:Name="ContentBlock" TextWrapping="WrapWholeWords" FontFamily="{Binding FontFamily}"

我有一个用户控件,它将多个属性传递给一个内部文本块,如下所示:

<UserControl x:Name="Root">

     <Grid>
         <TextBlock x:Name="ContentBlock" 
                    TextWrapping="WrapWholeWords"
                    FontFamily="{Binding FontFamily}"
                    FontWeight="{Binding FontWeight}"
                    Text="{Binding Text}"
                    LineHeight="{Binding LineHeight}"
                    Foreground="{Binding Foreground}"
                    />
     </Grid>
 </UserControl>
在我使用此控件的地方,我绑定到以下几个属性:

<controls:CustomTextBlock Text="{Binding Question.Text}"
                            FontSize="30"
                            MaxHeight="130"
                            Margin="0, 0, 10, 0"/>

但是,文本没有正确地通过绑定传递到控件中。我所看到的一切都表明这应该有效,但事实并非如此。知道是什么原因导致我的文本无法传递到dependency属性吗?

您的控件是CustomTextBlock类型,但该属性被定义为typeofShrinkingTextBlock所有。这些需要与绑定匹配才能正常工作。

我觉得很合适。。。您在输出窗口中看到任何绑定错误吗?我看不到任何绑定错误,没有。抱歉,在对代码进行动画化时错过了。它们在为修复而编辑的实际代码中确实匹配。在控件尚未加载但已创建控件时更改DataContext可能不会引发绑定更新。如果仅用SetValue替换SetValueDp并删除INotifyPropertyChanged实现,是否可行?控件不应该真正实现这一点。当一个直接的SetValue不起作用时,我添加了SetValueDp。我只需要向Text属性添加一个更改处理程序,并手动更新TextBlock的文本。实际上,它会为你节省一些周期。
<controls:CustomTextBlock Text="{Binding Question.Text}"
                            FontSize="30"
                            MaxHeight="130"
                            Margin="0, 0, 10, 0"/>