我想通过XAML将依赖项属性绑定到我的自定义WPF控件。WPF依赖属性未设置
这是我如何注册依赖属性:
public static readonly DependencyProperty AltNamesProperty =
DependencyProperty.Register ("AltNames", typeof(string), typeof(DefectImages));
public string AltNames
{
get { return (string) GetValue(AltNamesProperty); }
set { SetValue(AltNamesProperty, value); }
}
,这里是我如何把它在我的XAML:
<DataGrid.Columns>
<DataGridTemplateColumn IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Name="StackPanel1" Grid.Column="0" Width="950">
<TextBlock FontSize="16" TextDecorations="None" Text="{BindingPath=StandardName}" Foreground="Black" FontWeight="Bold" Padding="5,10,0,0"></TextBlock>
<TextBlock Text="{Binding Path=AltNames}"TextWrapping="WrapWithOverflow" Padding="5,0,0,10"></TextBlock>
<!-- this part should be magic!! -->
<controls:DefectImages AltNames="{Binding Path=AltNames}"></controls:DefectImages>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
我知道AltNames
属性,我试图结合是一个有效的属性,因为我可以在textblock中显示它就好了。我是否注册了依赖属性?
我需要做些什么才能在我的代码中获得正确的值,分配给AltNames
?
您是否尝试过'的altnames = “{绑定路径=的altnames,模式=双向}”'?运行时输出窗口中是否存在绑定错误? – nemesv
@nemesv只是尝试了双向绑定,没有运气。输出窗口中没有绑定错误。 – jacobsimeon
很可能这是由2个共享相同名称的属性混淆。你尝试重命名一个吗?您标记为答案的解决方法似乎很糟糕! – Gusdor