我有 3 个控件 - ContractSelection、ContractInfo 和 ContractClips
我有一个额外的类 - ContractStructureService。这包含一个属性 - SelectedContract
合同选择控件在组合框中向用户显示合同列表
当用户选择合同时,服务上的 SelectedContract 会发生变化。
我知道如何做所有这些 - 棘手的一点是我希望在所选合同发生更改时告知 ContractInfo 和 ContractClips
public class FlexContractStructureService : IFlexContractStructureService
{
#region IFlexContractStructureService Members
private Contract _selectedContract;
public ViewModels.Contract SelectedContract
{
get { return _selectedContract; }
set
{
_selectedContract = value;
OnSelectedContractChanged(new SelectedContractChangedEventArgs(SelectedContract));
}
}
public event EventHandler SelectedContractChanged;
protected virtual void OnSelectedContractChanged(SelectedContractChangedEventArgs e)
{
if (SelectedContractChanged != null)
{
SelectedContractChanged(this, e);
}
}
如何使用 Silverlight 执行此操作?
我假设如果我在 ContractInfo 和 ContractClipInfo 中都有代码,例如
service.SelectedContractChanged += ContractChanged
这是否意味着当我调用 OnSelectedContract 更改时,只通知 1 个对象?
保罗