Silverlight简单和复杂属性

时间:2011-04-12 12:16:43

标签: wpf silverlight xaml

我最近在一次采访中被问及在Silverlight中给出一个简单属性和复杂属性的示例。我认为他们询问依赖属性和附加属性,但我不确定。我从来没有听说过Silverlight Simple Property或Silverlight Complex Property一词,谷歌搜索没有帮助。这些常见的术语是我刚才错过的吗?如果是这样,他们会提到什么?

5 个答案:

答案 0 :(得分:1)

也许简单的属性是string,int,bool等类型,其中复杂属性是自定义类(或struct),如Company {string companyName; }

答案 1 :(得分:1)

之前没有听到过类似的事情......但是......

...也许他们指的是简单的懒惰设置:

SimpleProperty { get; set; }

并且定制setter很复杂:

ComplexProperty
{
   get
   {
      return _complexProperty
   }
   set
   {
      //Do some "complex" stuff here like maybe computing how many steps to the moon then add it to the current value before setting to the field :))
      _complexProperty = value;
      RaisePropertyChanged("ComplexProperty");
   }
}

答案 2 :(得分:1)

听起来你的采访者并没有使用最常用的术语来表达他们想要描述的概念。

或......

他们可能一直在测试你,看看你是否会回来寻求更多“要求”。你应该按下它们以获取更多信息,这样你就可以找出它们的意思并回答他们的问题。

答案 3 :(得分:0)

这是我的猜测。 以ListBox为例。 x:Name是一个简单属性,而ItemsPanel是Complex属性(无法为内联值赋值)

答案 4 :(得分:0)

一个简单的属性就像FontSize,你可以使用属性 - 属性语法轻松地设置字符串。

实施例

<Label FontSize="10">My Label</Label>

复杂属性是需要一个对象的属性,该对象本身可能包含许多属性,例如渐变画笔。您通常会使用property-element语法设置它。

实施例

<Button>
   <Button.Background>
      <LinearGradientBrush>
         <GradientStop Offset="0.00" Color="Yellow" />
         <GradientStop Offset="0.50" Color="Green" />
      </LinearGradientBrush>
   </Button.Background>
</Button>