繁体   English   中英

如何通过C#而不是WPF进行数据绑定?

[英]How to Databind through C# and not WPF?

所以我用错误的方式使用WPF,并且在加载时有一堆动态创建的对象...我试图弄清楚如何通过C#进行数据绑定...什么是等效的C#代码:

<StackPanel DataContext="{Binding SelectedGame}">
    <Label Content="{Binding HomeScoreText}" />
    <Label Content="{Binding AwayScoreText}" />
</StackPanel>

我在网上找不到例子..谢谢

MSDN有一个示例页面,演示了如何在代码中创建绑定

就您而言,您可以通过以下方式进行上述操作:

StackPanel panel = new StackPanel();
Label label1 = new Label();
Label label2 = new Label();

panel.Children.Add(label1);
panel.Children.Add(label2);

var yourVM = GetYourCurrentViewModelWithSelectedGameProperty();

// Set data context
Binding binding = new Binding("SelectedGame");
binding.Source = yourVM;
panel.SetBinding(FrameworkElement.DataContextProperty, binding);

binding = new Binding("HomeScoreText");
binding.Source = panel.DataContext;
label1.SetBinding(ContentControl.ContentProperty, binding);

binding = new Binding("AwayScoreText");
binding.Source = panel.DataContext;
label2.SetBinding(ContentControl.ContentProperty, binding);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM