我有一节课:
public class Car
{
public string Color { get; set; }
public string Speed { get; set; }
public string Property3 { get; set; }
}
我希望在更新属性Property3
或Color
时自动设置Speed
的值
我想设置Property3
的值,其中值Color
和Speed
的连接用连字符分隔
这样做的最佳方式是什么?
答案 0 :(得分:2)
您可以在Property3
的getter中指定 - 类似这样的内容:
public string Property3
{
get { return $"{this.Color}-{this.Speed}"; }
}
我假设您希望Property3
只读取,所以我省略了上面示例中的setter
答案 1 :(得分:1)
你可以像这样设置getter属性
public string Property3 {
get { return Color + "-" + Speed; }
}
答案 2 :(得分:0)
您有两种方式:
在速度和颜色的设置器中更新依赖属性:
private string _Color;
public string Color
{
get
{
return this._Color;
}
set
{
this._Color = value;
this.Property3 = $"{this.Color}-{this.Speed}";
}
}
private string _Speed;
public string Speed
{
get
{
return this._Speed;
}
set
{
this._Speed = value;
this.Property3 = $"{this.Color}-{this.Speed}";
}
}
public string Property3 { get; set; }
依赖属性的get中的连接:
public string Property3
{
get
{
return $"{this.Color}-{this.Speed}";
}
}
概念差异非常明显:您是希望能够覆盖Property3
还是只读它。