可以通过更改name属性来创建表单控件的别名
本文关键字:表单 控件 别名 创建 name 属性 可以通过 | 更新日期: 2023-09-27 17:50:30
假设我有一个名称为myComboBox的组合框。
现在,如果我声明另一个ComboBox引用,比如:
ComboBox curBox=new ComboBox();
curBox.Name = curCombo; // curCombo is a string whose value is myComboBox.
将curBox作为别名,即直接引用myComboBox
WPF控件的name属性仅用于填充XAML标记中的name属性。它应该是唯一的,因为它提供了对控件的(高级)引用(您可以通过名称找到控件)。
在您的示例中,myComboBox和curBox是ComboBox的两个独立实例,它们将简单地共享相同的名称。这是不允许的,因为名称在名称范围内应该是唯一的。
Rewinder是对的,只是想补充:在代码中设置curBox.Name
不会自动将此控件添加到当前命名范围。所以,设置它应该不是问题。要将其添加到名称范围,您可以使用RegisterName,如果"提供的名称将导致重复的名称注册",它将抛出ArgumentException
。