Data binding 将PropertyChanged事件从静态ObservableCollection路由到非静态包装类

Data binding 将PropertyChanged事件从静态ObservableCollection路由到非静态包装类,data-binding,static,uwp-xaml,windowsiot,windows-iot-core-10,Data Binding,Static,Uwp Xaml,Windowsiot,Windows Iot Core 10,我正在尝试将一个ObservableCollection(填充在后台线程中)绑定到UI中的图表控件。 因此,我有一个静态类“Core”,它有一个成员“DataState”。这个DataState类拥有ObservableCollection“SensorData”,它填充在前面提到的后台任务中 由于不可能对静态属性进行UWP XAML绑定,我编写了一个包装类“DataWrapper”,它是非静态的,并引用静态Core.DataState.SensorData-object 以下是我的一些代码:

我正在尝试将一个ObservableCollection(填充在后台线程中)绑定到UI中的图表控件。 因此,我有一个静态类“Core”,它有一个成员“DataState”。这个DataState类拥有ObservableCollection“SensorData”,它填充在前面提到的后台任务中

由于不可能对静态属性进行UWP XAML绑定,我编写了一个包装类“DataWrapper”,它是非静态的,并引用静态Core.DataState.SensorData-object

以下是我的一些代码:

Core.cs:

public static partial class Core
{
    private static DataState m_DataState;
    public static DataState DataState
    {
        get
        {
            return m_DataState;
        }
        set
        {
            if (value != null)
            {
                m_DataState = value;
            }
        }
    }
}
DataState.cs:

public class DataState
{
    private ObservableCollection<SensorData> m_SensorData = new ObservableCollection<SensorData>();
    public ObservableCollection<SensorData> SensorData
    {
        get
        {
            return m_SensorData;
        }
        set
        {
            if (value != null)
                m_SensorData = value;
        }
    }
公共类数据状态
{
私有ObservableCollection m_SensorData=新ObservableCollection();
公共可观测收集传感器数据
{
得到
{
返回m_传感器数据;
}
设置
{
if(值!=null)
m_传感器数据=数值;
}
}
DataWrapper.cs:

public class DataWrapper
{
    public ObservableCollection<SensorData> SensorData
    {
        get
        {
            return Core.DataState.SensorData;
        }
    }
}
公共类数据包装器
{
公共可观测收集传感器数据
{
得到
{
返回Core.DataState.SensorData;
}
}
}
XAML:


其中X和Y是传感器数据对象中包含的变量

因此,如果我等待显示图表控件,直到ObservaleCollection中有一些数据,这些数据就会很好地绘制到我的控件中。但是在这之后,最近添加的数据就不再绘制了

因此,我正在寻找一种将PropertyChanged事件从Core.DataState.SensorData以某种方式路由到DataWrapper.SensorData的方法。是否有可能这样做

你清楚这个问题的结构吗?我觉得我的描述听起来有点混乱


提前感谢您的帮助:-)

有人有什么想法吗?我对问题的描述是否过于混乱?这是您可以参考的问题。
<Charting:LineSeries Name="MySeries" Title="Title" IndependentValuePath="X" DependentValuePath="Y" ItemsSource="{x:Bind DataWrapper.SensorData}"></Charting:LineSeries>