wpf – 从XAML调用代码隐藏中定义的自定义依赖项属性
发布时间:2020-05-23 00:34:57 所属栏目:程序设计 来源:互联网
导读:是否可以在定义它的元素的XAML中调用自定义依赖项属性? 我的意思是,我的mainWindow有以下简单代码: 码 public partial class MainWindow : Window{ public static readonly DependencyProperty SpecialToProperty = DependencyProperty.Register(S
|
是否可以在定义它的元素的XAML中调用自定义依赖项属性? 我的意思是,我的mainWindow有以下简单代码: 码 public partial class MainWindow : Window
{
public static readonly DependencyProperty SpecialToProperty = DependencyProperty.Register("SpecialTo",typeof(double),typeof(MainWindow));
public MainWindow()
{
InitializeComponent();
}
public double SpecialTo
{
get
{
return (double)GetValue(SpecialToProperty);
}
set
{
SetValue(DoubleAnimation.ToProperty,value);
}
}
}
如何从MainWindow类的XAML部分代码中使用该依赖项属性? 我的意思是: <Window x:Class="WpfAnimationTEst.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525"
SpecialTo=200>
我知道可以使用附加的依赖属性来完成它,但这是唯一的方法吗?是不是可以调用代码隐藏中定义的依赖项属性? 谢谢你,如果这个问题有点愚蠢,我很抱歉,我只是在学习并试图理解WPF. 我在最初发布错误答案后找到了答案:如果你使用andreask的答案,问题实际上在于循环依赖.我必须为所有窗口创建一个BaseClass: 1)创建一个新的Window Base类: public class BaseWindow : Window {
public BaseWindow() { }
public static readonly DependencyProperty SpecialToProperty = DependencyProperty.Register("SpecialTo",typeof(BaseWindow));
public double SpecialTo {
get {
return (double)GetValue(SpecialToProperty);
}
set {
SetValue(SpecialToProperty,value);
}
}
}
这将是所有窗口的新基类. <local:BaseWindow x:Class="YOURNAMESPACE.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:YOURNAMESPACE"
Title="MainWindow" Height="350" Width="525" SpecialTo="100">
<Grid>
</Grid>
</local:BaseWindow>
3)您还需要修改部分MainWindow.cs: public partial class MainWindow : BaseWindow {
public MainWindow() {
InitializeComponent();
}
}
这对我有用,但是,你总是需要在窗口声明中使用额外的xaml标记. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
