Tôi đang cố gắng để ràng buộc một thuộc tính phụ thuộc thông qua XAML để điều khiển WPF tùy chỉnh của tôi.WPF phụ thuộc Bất động sản không được thiết lập
Đây là cách tôi đăng ký bất động sản phụ thuộc:
public static readonly DependencyProperty AltNamesProperty =
DependencyProperty.Register ("AltNames", typeof(string), typeof(DefectImages));
public string AltNames
{
get { return (string) GetValue(AltNamesProperty); }
set { SetValue(AltNamesProperty, value); }
}
Và Đây là cách tôi gọi nó trong XAML của tôi:
<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>
Tôi biết AltNames
tài sản mà tôi đang cố gắng để ràng buộc vào là một thuộc tính hợp lệ vì tôi có thể hiển thị nó trong một textblock tốt. Tôi có đăng ký thuộc tính Dependency không chính xác không?
Tôi cần làm gì để nhận giá trị chính xác được gán cho AltNames
trong mã của tôi sau?
Bạn đã thử 'AltNames = "{Binding Path = AltNames, Mode = TwoWay}" '? Có bất kỳ lỗi ràng buộc nào trong cửa sổ đầu ra trong khi chạy không? – nemesv
@nemesv vừa thử ràng buộc hai chiều, không có may mắn. Không có lỗi liên kết trong cửa sổ đầu ra. – jacobsimeon
Có thể điều này đang bị nhầm lẫn bởi 2 thuộc tính chia sẻ cùng một tên. Bạn đã thử đổi tên một cái chưa? Cách giải quyết mà bạn gắn cờ là câu trả lời có vẻ bất thường! – Gusdor