Tag: 附加属性

WPF附加属性数据绑定

我尝试使用绑定与附加的属性。 但不能得到它的工作。 public class Attached { public static DependencyProperty TestProperty = DependencyProperty.RegisterAttached("TestProperty", typeof(bool), typeof(Attached), new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.BindsTwoWayByDefault | FrameworkPropertyMetadataOptions.Inherits)); public static bool GetTest(DependencyObject obj) { return (bool)obj.GetValue(TestProperty); } public static void SetTest(DependencyObject obj, bool value) { obj.SetValue(TestProperty, value); } } XAML代码: <Window …> <StackPanel local:Attached.Test="true" x:Name="f"> <CheckBox local:Attached.Test="true" IsChecked="{Binding (local:Attached.Test), Mode=TwoWay, RelativeSource={RelativeSource Self}}" /> <CheckBox […]

什么时候应该通过普通的PropertyMetadata使用FrameworkPropertyMetadata或UIPropertyMetadata?

查看示例附加的属性和行为时,我已经看到了FrameworkPropertyMetadata , UIPropertyMetadata和PropertyMetadata的使用混杂。 由于它们都构成一个inheritance层次结构,我该如何select使用哪一个呢?

如何在后面的代码中访问附加属性?

我在我的XAML中有一个矩形,并想在后面的代码中更改它的Canvas.Left属性: <UserControl x:Class="Second90.Page" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="400" Height="300" KeyDown="txt_KeyDown"> <Canvas> <Rectangle Name="theObject" Canvas.Top="20" Canvas.Left="20" Width="10" Height="10" Fill="Gray"/> </Canvas> </UserControl> 但是这不起作用: private void txt_KeyDown(object sender, KeyEventArgs e) { theObject.Canvas.Left = 50; } 有谁知道这是什么语法?

WPF中依赖项属性和附加属性之间有什么区别?

(自定义)依赖项属性和WPF中的附加属性之间有什么区别? 每个的用途是什么? 这些实现通常如何不同?

InitializeComponent()是做什么的,它在WPF中是如何工作的?

InitializeComponent()做什么的,它在WPF中是如何工作的? 一般来说,首先,我会特别想知道施工顺序的细节,当有附加属性的时候会发生什么。