[英]WPF Data Binding vs. Inheritance - Bind to property of base
我有以下設置。
基類
public class ToolPathBaseItem
{
private double _x, _y, _z;
public double X
{
get { return _x; }
set { _x = value; }
}
public double Y
{
get { return _y; }
set { _y = value; }
}
public double Z
{
get { return _z; }
set { _z = value; }
}
public ToolPathBaseItem(double x, double y, double z)
{
_x = x;
_y = y;
_z = z;
}
}
和服務器類
public class CWToolPathItem : ToolPathBaseItem
{
private double _nx, _ny, _nz;
public CWToolPathItem(double x, double y, double z, double nx, double ny, double nz, CWCLRecord record)
: base(x, y, z)
{
_nx = nx;
_ny = ny;
_nz = nz;
}
public double Nx
{
get { return _nx; }
set { _nx = value; }
}
public double Ny
{
get { return _ny; }
set { _ny = value; }
}
public double Nz
{
get { return _nz; }
set { _nz = value; }
}
}
將會有更多的類擴展“ ToolPathBaseItem”,並且可能具有相同的PropertyName,例如“ Nx,Ny,...”。
我有一個DataGrid,ItemsSource綁定到
ObservableList<CWToolPathItem>
第一個問題是:如何綁定
<DataGridTextColumn Header="X" Binding="{Binding HERETHEBINDING, StringFormat=N3}"/>
到CWToolPathItem的X屬性,因為X屬性是在基類中定義的。
第二個問題是:如果我有幾個具有相同名稱屬性的類。 我該如何決定應使用哪個班級?
我希望我已經充分描述了我的問題。 在此先感謝您的幫助。
您可以直接綁定到基類屬性
<DataGridTextColumn Header="X" Binding="{Binding X, StringFormat=N3}"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.