簡體   English   中英

通過更改name屬性可以創建表單控件的別名

[英]Is is possible to Create an Alias of a Form Control by Changing the name property

假設我有一個名稱為myComboBox的ComboBox

現在,如果我聲明另一個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的兩個單獨實例,它們將共享相同的名稱。 不允許這樣做,因為名稱在Namescope中應該唯一。 有關此主題的更多信息, 請參見此處

Rewinder是正確的,只想添加:在代碼中設置curBox.Name不會自動將此控件添加到當前的Namescope。 因此,設置它應該不是問題。 要將其添加到名稱范圍,可以使用RegisterName ,如果“提供的名稱將導致重復的名稱注冊”,則將引發ArgumentException

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM