c# - WPF 中控件模板的动态名称?

标签 c# wpf data-binding prism

我们需要在运行时使用数据绑定(bind)分配 Name 属性。我们定义了控件模板,WPF 不允许绑定(bind)来自 Data Bind 对象的名称。

如果我这样做,我会得到这样的错误,

Error 3 MarkupExtensions are not allowed for Uid or Name property values, so '{Binding Name}' is not valid. Line 15 Position 36. C:\Users\gsubramani\Workspace\ProLinkIII_Experiment\BasicFrame\Resources\TreeTemplate.xaml 15 36 BasicFrame

要解决这个问题,是否可以定义一个自定义属性,让实习生通过数据绑定(bind)设置控件的 Name 属性?

我不知道如何处理 WPF 中的 DependencyProperty,以便我可以定义一个自定义属性,实习生设置控件的 Name 属性? (我对 WPF 世界还很陌生)。

最佳答案

如果您需要它来实现 UI 自动化,我建议您使用此处描述的解决方案: http://www.jonathanantoine.com/2011/11/03/coded-ui-tests-automationid-or-how-to-find-the-chose-one-control/

您可以在 WPF 中将 AutomationProperties.AutomationId 与绑定(bind)一起使用,并且可以在您的 UI 自动化客户端中将此值用作 automationid。

关于c# - WPF 中控件模板的动态名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4469870/

相关文章:

c# - Xamarin 可以处理 Android 上的振动加速度计吗?

c# - Outlook MAPI 存储提供程序。管理?

c# - 更新 ItemsSource 后 WPF ComboBox 设置为 null

css - 使用函数 knockout CSS 数据绑定(bind)?

c# - 将字符串生成器转换为 json 字符串

WPF:强制大写的组合框?

wpf - 使用 Log4Net 记录 WPF 数据绑定(bind)错误

c# - Winforms 数据绑定(bind)到自定义类

android - executeBindings Databind android 里面的命令

c# - Entity Framework 7 无法创建迁移,因为存在同名的导航属性