gpt4 book ai didi

c# - 代码隐藏中的绑定(bind)属性

转载 作者:数据小太阳 更新时间:2023-10-29 01:46:30 25 4
gpt4 key购买 nike

我有 WPF 应用程序和一个窗口。让我的 xml 中有这样的东西:

<Label Name="TitleLabel" Content="Some title" \>
<Label Name="BottomLabel" Content="{Binding ElementName=TitleLabel Path=Content">

假设我不能使用 xml 创建 BottomLabelTitleLabel。所以我必须在我的“代码隐藏”中创建 BottomLabel 作为属性。如何在后面的代码中为 Bottom 标签的 Content 属性指定相同的绑定(bind)?有可能吗?

所以我会有这样的东西:

public Label TitleLabel {get; private set;}
public Label BottomLabel {get; private set;}

public MyClass(){
TitleLabel = new Label();
TitleLabel.Content = "Some title";
BottomLabel = new Label();
BottomLabel.Content = // ?? what should be here ? How do I specify the binding
// that binds BottomLabel.COntent to TitleLabel.Content?
}

我可以写什么来代替评论?谢谢你的回答。

最佳答案

以下是在代码中定义和应用绑定(bind)的方式:

Binding binding = new Binding {
Source = TitleLabel,
Path = new PropertyPath("Content"),
};
BottomLabel.SetBinding(ContentControl.ContentProperty, binding);

请注意,对于不是从 FrameworkElement 派生的对象,您必须明确使用 BindingOperations.SetBinding() 而不是 element.SetBinding():

BindingOperations.SetBinding(BottomLabel, ContentControl.ContentProperty, binding);

关于c# - 代码隐藏中的绑定(bind)属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2938656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com