我正在创建附加属性。我的附属班级是helper:FocusDetail
并且有 2 个财产。第二个属性DetailBody
类型是对象。我在项目控制上使用这个属性
<ItemsControl ItemsSource="{Binding Riches}" BorderThickness="0">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBox Text="{Binding TextInfo}"
helper:FocusDetail.DetailTitle="{StaticResource strTitle}"
helper:FocusDetail.DetailBody="{Binding Description}"
/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
这是成功的工作
我正在改变这样的附加值
<DataTemplate>
<TextBox Text="{Binding TextInfo}"
helper:FocusDetail.DetailTitle="{StaticResource strTitle}">
<helper:FocusDetail.DetailBody>
<Binding Path="Description"/>
</helper:FocusDetail.DetailBody>
</TextBox>
</DataTemplate>
那是我要再次改变的工作
<DataTemplate>
<TextBox Text="{Binding TextInfo}"
helper:FocusDetail.DetailTitle="{StaticResource strTitle}"
>
<helper:FocusDetail.DetailBody>
<TextBlock Text="Some static text"></TextBlock>
</helper:FocusDetail.DetailBody>
</TextBox>
那是有效的。我最后的改变在这里
<DataTemplate>
<TextBox Text="{Binding TextInfo}"
helper:FocusDetail.DetailTitle="{StaticResource strTitle}">
<helper:FocusDetail.DetailBody>
<TextBlock Text="{Binding Description}"></TextBlock>
</helper:FocusDetail.DetailBody>
</TextBox>
</DataTemplate>
这是行不通的。文本块为空。
我在改变
<TextBlock Text="{Binding Description}"></TextBlock>
到
<TextBlock Text="{Binding }"></TextBlock>
.
但是 textblock 返回 Window DataContext 类型。已经退出 Itemscontrol 迭代。
为什么绑定错误工作?
如何像最后一个代码一样声明附加属性?
我需要附加属性包含可视树控件。