c# - 以编程方式使用 SelectedItem 设置 DataContext

标签 c# wpf data-binding

如何以编程方式设置指定列表中所选项目的 DataContext?

更简单地说,您如何在代码中重现这种类型的绑定(bind)?

<StackPanel>
    <ListBox Name="listBox1" />
    <TextBox Name="textBox1" DataContext="{Binding ElementName=listBox1, Path=SelectedItem}" />
</StackPanel>

最佳答案

您需要为文本框设置一个名称,以便您可以在代码中引用它。然后您应该能够将一个对象分配给 DataContext 属性。您可以像这样以编程方式创建数据绑定(bind):

Binding binding = new Binding();
binding.ElementName = "listBox1";
binding.Path = new PropertyPath("SelectedItem");
binding.Mode = BindingMode.OneWay;
txtMyTextBox.SetBinding(TextBox.TextProperty, binding);

关于c# - 以编程方式使用 SelectedItem 设置 DataContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/249375/

相关文章:

c# - 检查javascript的完整性,用户代码=服务器代码

javascript - Visual Studio 2015 文件打开速度很慢?

java - 将 Action<String> 从 c# 转换为 Java

c# - 在不同窗口中单击按钮时调用函数(WPF 应用程序)

wpf - 当 ListView 中的扩展器折叠时,无法使 WPF ListView 折叠

c# - 如何在 wpf 文本框中自动完成?

c# - CommandParameter MultiBinding 返回包含 null 元素的数组

c# - ASP.NET 路由 - 忽略具有特定扩展名的文件的路由,无论目录如何

java - Spring Webflow 中的数据绑定(bind)问题

javascript - 多事件绑定(bind)快捷方式