c# - 如何从我的代码隐藏中访问 XAML 对象的绑定(bind)属性?

标签 c# wpf xaml data-binding code-behind

我想从我的 C# 代码中访问 XAML 文档中控件的绑定(bind)设置。具体来说,我想在代码中设置一个断点,并使用 Visual Studio 的本地窗口,从 VS 调试器中检查与绑定(bind)控件关联的属性。

这可以做到吗?

就我而言,我有一个 TextBox,其绑定(bind)在我的 XAML 文件中定义。我在绑定(bind)语句中指定了 StringFormat,我想查看字符串格式化程序详细信息存储在我的 TextBox 中的位置。设置断点后,检查 TextBox 一段时间,我找不到底层绑定(bind)属性?!

我认为必须有一种方法可以让我能够从我的 ViewModel 代码访问我的绑定(bind)设置。这些绑定(bind)设置存储在哪里?

注意:我知道 DataContext 包含我的控件正在交互的数据对象。然而,这不是我需要的。我需要查看并检查将数据对象与 XAML UI 对象连接的设置。

最佳答案

您可以使用以下代码从后台代码进行访问。

BindingExpression be= txt.GetBindingExpression(TextBox.TextProperty);
        string format=be.ParentBinding.StringFormat;

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

相关文章:

c# - 转换后的 BitmapImage 未显示在页面上

Xaml 绑定(bind)在模板 10 应用程序中看不到 ViewModel

c# - Selenium WebDriver 在 RemoteWebElement.Click() 上抛出 WebDriverTimeoutException

C# ListView 搜索项目没有清晰的列表

c# - 根据 ViewModel 类型为 ItemsControl 选择 DataTemplate

WPF Datagrid,是否可以混合使用组和普通(非分组)行?

c# - WPF UserControl 继承另一个 UserControl

wpf - 我需要知道演示模型中的窗口句柄

wpf - 样式按钮图像仅适用于最后一项

c# - 为什么我的窗口高度不适用于自适应设计的 xaml