我有一个带有一些数据的屏幕。在屏幕内部,我有两个自定义控件(在左侧和右侧)。
我需要做的是以下几点:
将数据库中的一些数据绑定到第一个自定义控件中的一些控件。(填写列表、组合框等,问题不大)
然后用户可以在列表中选择一个条目,按下一个按钮 -> 现在应该使第二个 CustomControl 可见;根据选择从数据库请求一些数据并动态创建和显示图表。
所以我知道如何构建图表和构建控件。但是如何通过代码从屏幕访问数据并从第一个 CustomControl 中访问另一个 CustomControl?
编辑:
我发现的事情。
从屏幕访问控制
this.FindControl("yourControl");
用控件做一些事情:
this.FindControl("yourControl").ControlAvailable += ( (o,e) => { YourControlType myControl = e.Control as YourControlType; });
访问屏幕数据
IContentItem dataContext = this.DataContext as IContentItem; IScreenObject screen = dataContext.Screen; IScreenProperty prop = screen.Details.Properties["yourProperty"]; VisualCollection<yourProperty> items = prop.Value as VisualCollection<yourProperty>;
显示新画面
Application.Current.Details.Dispatcher.BeginInvoke(() => Application.Current.ShowGraphScreen(reportItem.BlockID));
也许这会对某人有所帮助。