我有一个继承自TextBox的CustomControl,它在设计时将其放置到窗口时没有设置其Width
属性。默认情况下,TextBox在设计时需要Width
为120。
默认情况下如何将控制宽度设置为120?
如果存在控制的开发,解决方案更正确
答案 0 :(得分:1)
您可以尝试使用DefaultInitializer class:
/*
** In your custom control class
*/
using Microsoft.Windows.Design.Features;
// ...
[Feature(typeof(CustomTextBoxDefaults))]
public class CustomTextBox : TextBox
{
/* ... */
}
/*
** CustomTextBoxDefaults provides default values for designer
*/
using Microsoft.Windows.Design.Model;
// ...
class CustomTextBoxDefaults : DefaultInitializer
{
public override void InitializeDefaults(ModelItem item)
{
item.Properties["Width"].SetValue(120);
// Setup other properties
}
}
请注意,您应该向项目添加两个程序集:Microsoft.Windows.Design.Extensibility和Microsoft.Windows.Design.Interaction