2015-03-31 123 views
0

我是新来WPF C#,我试图用自定义属性创建一个用户控件。我有一个名为星球的财产。如何在设计时显示自定义属性的值?

而这个属性可以把水银,金星,地球和火星的价值。

在设计期间,当我在应用程序中包含此控件并键入属性名称时,我希望Visual Studio提示这4个值。就像我们在某些控件上使用Alignment属性时一样,它显示左,右,中心。

任何人都可以告诉我如何做到这一点?

+0

我编辑了您的标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 – 2015-03-31 18:14:00

+0

您需要一个枚举 – 2015-03-31 18:17:05

回答

0

您需要创建类型枚举的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 

} 
+0

这非常有帮助。非常感谢你。你能否给我提供一些很好的参考资料,在这里我可以学到更多这样的东西? – amoid 2015-03-31 19:16:30

0

这是你需要的东西:

public class Planet 
{ 
    public string mars{ get; set; } 

    public string earth{ get; set; } 

    public string Jup{ get; set; } 

    public string pluto{ get; set; } 
} 
相关问题