الخاصية Text TextBlock لا يمكن تعيين عن طريق أسلوب الزناد إذا غير فارغة - لماذا؟
سؤال
ولا يعمل XAML أدناه (النص لا يتغير عند تمرير الماوس فوق):
<Window.Resources>
<Style TargetType="TextBlock">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Text" Value="hover"/>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<Grid>
<TextBlock Text="original"/>
</Grid>
ولكن، إذا كانت السمة النص مفقود:
<Grid>
<TextBlock/>
</Grid>
والنص لا يتغير على الماوس فوق. أي شخص يعرف النظرية وراء هذا؟
المحلول
وانها قضية DependencyProperty الأسبقية، عندما كنت في الواقع تعيين الخاصية كما في:
<TextBlock Text="original"/>
والتي تأخذ الأسبقية على القيمة المعينة في المشغل.
ويرى
لا تنتمي إلى StackOverflow