我是新来WPF C#,我试图用自定义属性创建一个用户控件。我有一个名为星球的财产。如何在设计时显示自定义属性的值?
而这个属性可以把水银,金星,地球和火星的价值。
在设计期间,当我在应用程序中包含此控件并键入属性名称时,我希望Visual Studio提示这4个值。就像我们在某些控件上使用Alignment属性时一样,它显示左,右,中心。
任何人都可以告诉我如何做到这一点?
我是新来WPF C#,我试图用自定义属性创建一个用户控件。我有一个名为星球的财产。如何在设计时显示自定义属性的值?
而这个属性可以把水银,金星,地球和火星的价值。
在设计期间,当我在应用程序中包含此控件并键入属性名称时,我希望Visual Studio提示这4个值。就像我们在某些控件上使用Alignment属性时一样,它显示左,右,中心。
任何人都可以告诉我如何做到这一点?
您需要创建类型枚举的Depedency财产。请参阅以下代码。
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
public Planets Planet
{
get { return (Planets)GetValue(PlanetProperty); }
set { SetValue(PlanetProperty, value); }
}
public static readonly DependencyProperty PlanetProperty =
DependencyProperty.Register("Planet", typeof(Planets), typeof(UserControl1), new UIPropertyMetadata(Planets.Mercury));
}
public enum Planets
{
Mercury,
Venus,
Earth,
Mars
}
这非常有帮助。非常感谢你。你能否给我提供一些很好的参考资料,在这里我可以学到更多这样的东西? – amoid 2015-03-31 19:16:30
这是你需要的东西:
public class Planet
{
public string mars{ get; set; }
public string earth{ get; set; }
public string Jup{ get; set; }
public string pluto{ get; set; }
}
我编辑了您的标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 – 2015-03-31 18:14:00
您需要一个枚举 – 2015-03-31 18:17:05